| | |
| | | |
| | | // 3. 定义父级列processList,包含动态子列 |
| | | const processList = { |
| | | title: t('其他列'), |
| | | title: t('basicData.otherColumns'), |
| | | field: 'process', |
| | | children: otherColumns // 将动态列作为子列 |
| | | }; |
| | |
| | | |
| | | |
| | | <div style="margin-top: 10px"> |
| | | <el-button @click="emitParent()" style="width: 80px;height: 30px" type="primary" size="small">保存</el-button> |
| | | <el-button @click="emitParent()" style="width: 80px;height: 30px" type="primary" size="small">{{$t('basicData.save')}}</el-button> |
| | | </div> |
| | | |
| | | </div> |
| | |
| | | if(dataList.value.edgingProcess.edgingType!=null){ |
| | | emit('getEdgingProcess', dataList.value,dataList.value.edgingProcess.edgingType) |
| | | }else{ |
| | | ElMessage.error(t('请选择磨边类型')) |
| | | ElMessage.error(t('order.msg.pleaseProcessType')) |
| | | } |
| | | |
| | | } |
| | |
| | | } from '@element-plus/icons-vue' |
| | | import { ElMessage, ElMessageBox } from 'element-plus' |
| | | import request from "@/utils/requestByFile" |
| | | import {useI18n} from "vue-i18n"; |
| | | |
| | | const { t } = useI18n() |
| | | const uploadRef = ref() |
| | | const fileList = ref([]) |
| | | const converting = ref(false) |
| | |
| | | request.post(`/orderFile/deleteOrderNumberFile/${props.orderId}/${props.rowIndex.orderNumber}`).then(res=>{ |
| | | result.value = null |
| | | conversionResult.value = null |
| | | ElMessage.success("删除成功") |
| | | ElMessage.success(t("basicData.msg.deleteSuccess")) |
| | | }) |
| | | } |
| | | |
| | |
| | | const loadSupportedFormats = async () => { |
| | | try { |
| | | if (fileList.value.length === 0) { |
| | | ElMessage.warning('请先选择要上传的DWG文件或图片文件') |
| | | ElMessage.warning(t("order.msg.pleaseUploadPicture1")) |
| | | return |
| | | } |
| | | loadingFormats.value = true |
| | |
| | | converting.value = true |
| | | progressPercentage.value = 0 |
| | | progressStatus.value = '' |
| | | progressText.value = '准备上传...' |
| | | progressText.value = t("order.msg.pleaseUploadPicture2") |
| | | |
| | | // 模拟进度更新 |
| | | const progressInterval = setInterval(() => { |
| | | if (progressPercentage.value < 80) { |
| | | progressPercentage.value += 10 |
| | | progressText.value = `上传中... ${progressPercentage.value}%` |
| | | progressText.value = t("order.msg.pleaseUploadPicture3")+progressPercentage.value+'%' |
| | | } |
| | | }, 500) |
| | | |
| | |
| | | clearInterval(progressInterval) |
| | | progressPercentage.value = 100 |
| | | progressStatus.value = 'success' |
| | | progressText.value = '上传完成!' |
| | | progressText.value = t("order.msg.pleaseUploadPicture4") |
| | | uploadRef.value.clearFiles() |
| | | fileList.value = [] |
| | | setTimeout(() => { |
| | |
| | | } |
| | | }) |
| | | } catch (error) { |
| | | ElMessage.error('上传失败') |
| | | ElMessage.error(t("order.msg.pleaseUploadPicture5")) |
| | | } finally { |
| | | loadingFormats.value = false |
| | | } |
| | |
| | | const fileTypeCheckBoole = fileTypeCheck(file) |
| | | if (!(fileTypeCheckBoole )) { |
| | | //ElMessage.error('请选择DWG或DXF格式的文件') |
| | | ElMessage.error('请选择DWG文件或JPG、PNG格式的图片文件') |
| | | ElMessage.error(t("order.msg.pleaseUploadPicture6")) |
| | | uploadRef.value.clearFiles() |
| | | return |
| | | } |
| | | |
| | | if (file.raw.size > 50 * 1024 * 1024) { |
| | | ElMessage.error('文件大小不能超过50MB') |
| | | ElMessage.error(t("order.msg.pleaseUploadPicture7")) |
| | | uploadRef.value.clearFiles() |
| | | return |
| | | } |
| | | fileList.value = [file] |
| | | ElMessage.success(`已选择文件: ${file.name}`) |
| | | ElMessage.success(t("order.msg.pleaseUploadPicture8")+file.name) |
| | | } |
| | | |
| | | const handleFileRemove = () => { |
| | |
| | | <div class="card-header"> |
| | | <span class="header-title"> |
| | | <el-icon><Document /></el-icon> |
| | | 文件上传 |
| | | {{$t("order.msg.pleaseUploadPicture9")}} |
| | | </span> |
| | | |
| | | </div> |
| | |
| | | > |
| | | <el-icon class="el-icon--upload"><UploadFilled /></el-icon> |
| | | <div class="el-upload__text"> |
| | | 拖拽文件到此处或 <em>点击选择文件</em> |
| | | {{$t("order.msg.pleaseUploadPicture10")}} <em>{{$t("order.msg.pleaseUploadPicture11")}}</em> |
| | | </div> |
| | | <template #tip> |
| | | <div class="el-upload__tip"> |
| | | 仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB |
| | | {{$t("order.msg.pleaseUploadPicture12")}} |
| | | </div> |
| | | </template> |
| | | </el-upload> |
| | |
| | | <template #icon> |
| | | <el-icon><MagicStick /></el-icon> |
| | | </template> |
| | | 保存 |
| | | {{$t("basicData.save")}} |
| | | </el-button> |
| | | |
| | | <el-button @click="handleReset" |
| | |
| | | <template #icon> |
| | | <el-icon><RefreshLeft /></el-icon> |
| | | </template> |
| | | 重置 |
| | | {{$t("craft.reset")}} |
| | | </el-button> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 转换进度 --> |
| | | <div v-if="converting" class="conversion-progress"> |
| | | <el-divider content-position="left">上传进度</el-divider> |
| | | <el-divider content-position="left">{{$t("order.msg.pleaseUploadPicture13")}}</el-divider> |
| | | <el-progress |
| | | :percentage="progressPercentage" |
| | | :status="progressStatus" |
| | |
| | | |
| | | <!-- 转换结果 --> |
| | | <div v-if="conversionResult" class="conversion-result"> |
| | | <el-divider content-position="left">上传结果</el-divider> |
| | | <el-divider content-position="left">{{$t("order.msg.pleaseUploadPicture14")}}</el-divider> |
| | | |
| | | <el-result |
| | | icon="success" |
| | | :sub-title="`文件已成功转格式`" |
| | | :sub-title='t("order.msg.pleaseUploadPicture15")' |
| | | > |
| | | <template #extra> |
| | | <div class="result-content"> |
| | |
| | | ><template #icon> |
| | | <el-icon><Download/></el-icon> |
| | | </template> |
| | | 下载 |
| | | {{$t("order.msg.pleaseUploadPicture16")}} |
| | | </el-button> |
| | | <el-button |
| | | @click = 'deleteFile' |
| | |
| | | ><template #icon> |
| | | <el-icon><Delete /></el-icon> |
| | | </template> |
| | | 删除 |
| | | {{$t("basicData.delete")}} |
| | | </el-button> |
| | | </div> |
| | | </div> |
| | |
| | | remarks2:'备注2', |
| | | remarks3:'备注3', |
| | | remarks4:'备注4', |
| | | otherColumns:'其他列', |
| | | msg:{ |
| | | max255:'أدخل 255 حرفًا كحد أقصى', |
| | | max10:"最多输入10个字符", |
| | |
| | | updateOrderIdErrorDiscrepancyInLength:'输入订单号长度不符', |
| | | updateOrderIdErrorInputNumber:'请输入数字', |
| | | updateOrderIdErrorNotNo1:'不能修改第一个单子', |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!' |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!', |
| | | pleaseProcessType:'请选择磨边类型', |
| | | pleaseUploadPicture1:"请先选择要上传的DWG文件或图片文件", |
| | | pleaseUploadPicture2:"准备上传...", |
| | | pleaseUploadPicture3:"上传中...", |
| | | pleaseUploadPicture4:"上传完成!", |
| | | pleaseUploadPicture5:"上传失败!", |
| | | pleaseUploadPicture6:"请选择DWG文件或JPG、PNG格式的图片文件", |
| | | pleaseUploadPicture7:"文件大小不能超过50MB", |
| | | pleaseUploadPicture8:"已选择文件:", |
| | | pleaseUploadPicture9:"文件上传", |
| | | pleaseUploadPicture10:"拖拽文件到此处或", |
| | | pleaseUploadPicture11:"点击选择文件", |
| | | pleaseUploadPicture12:"仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB", |
| | | pleaseUploadPicture13:"上传进度", |
| | | pleaseUploadPicture14:"上传结果", |
| | | pleaseUploadPicture15:"文件已成功转格式", |
| | | pleaseUploadPicture16:"下载", |
| | | }, |
| | | preciseMode:'精确模式', |
| | | ambiguityModels:'模糊模式', |
| | |
| | | quantity:'工程用数量', |
| | | print1:'11列4行', |
| | | print2:'6行3列', |
| | | glassId:'玻璃编号', |
| | | polysId:'小片序号', |
| | | msg:{ |
| | | msg1:'流程卡创建失败', |
| | | msg2:'请输入小于等于待分数量的数字', |
| | |
| | | pleaseMsg1:'订单存在其他金额单价没有填写', |
| | | print1:'洛阳打印无尺寸', |
| | | print2:'洛阳打印有尺寸', |
| | | orderAdd:'订单添加', |
| | | |
| | | }, |
| | | replenish:{ |
| | |
| | | changeUserName:'تعديل اسم المستخدم', |
| | | userNameCannotBeEmpty:'لا يمكن ان يكون اسم المستخدم فارغاً', |
| | | }, |
| | | userLog:{ |
| | | page:{ |
| | | userListLog:'日志首页', |
| | | }, |
| | | loginName:'登录名', |
| | | userName:'用户名', |
| | | loginDate:'登录时间', |
| | | }, |
| | | orderBasicData:{ |
| | | page:{ |
| | | searchOrderBasicData:'النوع الأساسي', |
| | | searchGlassType:'نوع الزجاج', |
| | | searchProcessAttributeConfig:'工艺属性类别', |
| | | }, |
| | | glassCategory:'نوع الزجاج', |
| | | order:'طلب', |
| | |
| | | laminatingProcessB:'中空后合片工序', |
| | | laminatingProcessC:'夹胶工序', |
| | | laminatingProcessD:'中空工序', |
| | | please1:'请选择类别', |
| | | please2:'请输入名称', |
| | | please3:'请输入别名', |
| | | }, |
| | | machine:{ |
| | | page:{ |
| | |
| | | remarks2:'备注2', |
| | | remarks3:'备注3', |
| | | remarks4:'备注4', |
| | | otherColumns:'其他列', |
| | | msg:{ |
| | | max255:"The value contains a maximum of 255 characters", |
| | | max10:"最多输入10个字符", |
| | |
| | | updateOrderIdErrorDiscrepancyInLength:'输入订单号长度不符', |
| | | updateOrderIdErrorInputNumber:'请输入数字', |
| | | updateOrderIdErrorNotNo1:'不能修改第一个单子', |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!' |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!', |
| | | pleaseProcessType:'请选择磨边类型', |
| | | pleaseUploadPicture1:"请先选择要上传的DWG文件或图片文件", |
| | | pleaseUploadPicture2:"准备上传...", |
| | | pleaseUploadPicture3:"上传中...", |
| | | pleaseUploadPicture4:"上传完成!", |
| | | pleaseUploadPicture5:"上传失败!", |
| | | pleaseUploadPicture6:"请选择DWG文件或JPG、PNG格式的图片文件", |
| | | pleaseUploadPicture7:"文件大小不能超过50MB", |
| | | pleaseUploadPicture8:"已选择文件:", |
| | | pleaseUploadPicture9:"文件上传", |
| | | pleaseUploadPicture10:"拖拽文件到此处或", |
| | | pleaseUploadPicture11:"点击选择文件", |
| | | pleaseUploadPicture12:"仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB", |
| | | pleaseUploadPicture13:"上传进度", |
| | | pleaseUploadPicture14:"上传结果", |
| | | pleaseUploadPicture15:"文件已成功转格式", |
| | | pleaseUploadPicture16:"下载", |
| | | }, |
| | | preciseMode:'精确模式', |
| | | ambiguityModels:'模糊模式', |
| | |
| | | quantity:'工程用数量', |
| | | print1:'11列4行', |
| | | print2:'6行3列', |
| | | glassId:'玻璃编号', |
| | | polysId:'小片序号', |
| | | msg:{ |
| | | msg1:'流程卡创建失败', |
| | | msg2:'请输入小于等于待分数量的数字', |
| | |
| | | pleaseMsg1:'There are other amounts in the order and the unit price is not filled in', |
| | | print1:'洛阳打印无尺寸', |
| | | print2:'洛阳打印有尺寸', |
| | | orderAdd:'订单添加', |
| | | |
| | | }, |
| | | replenish:{ |
| | |
| | | changeUserName:'Modifying a user name', |
| | | userNameCannotBeEmpty:'The user name cannot be empty', |
| | | }, |
| | | userLog:{ |
| | | page:{ |
| | | userListLog:'日志首页', |
| | | }, |
| | | loginName:'登录名', |
| | | userName:'用户名', |
| | | loginDate:'登录时间', |
| | | }, |
| | | orderBasicData:{ |
| | | page:{ |
| | | searchOrderBasicData:'Base type', |
| | | searchGlassType:'Type of glass', |
| | | searchProcessAttributeConfig:'工艺属性类别', |
| | | }, |
| | | glassCategory:'Type of glass', |
| | | order:'Order', |
| | |
| | | laminatingProcessB:'中空后合片工序', |
| | | laminatingProcessC:'夹胶工序', |
| | | laminatingProcessD:'中空工序', |
| | | please1:'请选择类别', |
| | | please2:'请输入名称', |
| | | please3:'请输入别名', |
| | | }, |
| | | machine:{ |
| | | page:{ |
| | |
| | | remarks2:'备注2', |
| | | remarks3:'备注3', |
| | | remarks4:'备注4', |
| | | otherColumns:'其他列', |
| | | msg:{ |
| | | max255:"최대 255자 입력 가능", |
| | | max10:"最多输入10个字符", |
| | |
| | | updateOrderIdErrorDiscrepancyInLength:'주문번호 자릿수 불일치', |
| | | updateOrderIdErrorInputNumber:'숫자 입력 필요', |
| | | updateOrderIdErrorNotNo1:'첫 번째 항목 수정 불가', |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!' |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!', |
| | | pleaseProcessType:'请选择磨边类型', |
| | | pleaseUploadPicture1:"请先选择要上传的DWG文件或图片文件", |
| | | pleaseUploadPicture2:"准备上传...", |
| | | pleaseUploadPicture3:"上传中...", |
| | | pleaseUploadPicture4:"上传完成!", |
| | | pleaseUploadPicture5:"上传失败!", |
| | | pleaseUploadPicture6:"请选择DWG文件或JPG、PNG格式的图片文件", |
| | | pleaseUploadPicture7:"文件大小不能超过50MB", |
| | | pleaseUploadPicture8:"已选择文件:", |
| | | pleaseUploadPicture9:"文件上传", |
| | | pleaseUploadPicture10:"拖拽文件到此处或", |
| | | pleaseUploadPicture11:"点击选择文件", |
| | | pleaseUploadPicture12:"仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB", |
| | | pleaseUploadPicture13:"上传进度", |
| | | pleaseUploadPicture14:"上传结果", |
| | | pleaseUploadPicture15:"文件已成功转格式", |
| | | pleaseUploadPicture16:"下载", |
| | | }, |
| | | preciseMode:'精确模式', |
| | | ambiguityModels:'模糊模式', |
| | |
| | | isStorage:'입고 완료된 주문은 시스템 되돌리기가 불가능 합니다.', |
| | | BackSure:'해당 프로세스를 원클릭으로 되돌리시겠습니까?', |
| | | filterError:'请输入正确格式的筛选条件' |
| | | |
| | | }, |
| | | updateOrderId:'주문 번호 수정', |
| | | reportingTransfer:'작업 실적 이관' |
| | |
| | | quantity:'工程用数量', |
| | | print1:'11列4行', |
| | | print2:'6行3列', |
| | | glassId:'玻璃编号', |
| | | polysId:'小片序号', |
| | | msg:{ |
| | | msg1:'流程卡创建失败', |
| | | msg2:'请输入小于等于待分数量的数字', |
| | |
| | | pleaseMsg1:'주문서 기타금액 단가가 기입되지 않았습니다', |
| | | print1:'洛阳打印无尺寸', |
| | | print2:'洛阳打印有尺寸', |
| | | orderAdd:'订单添加', |
| | | |
| | | }, |
| | | replenish:{ |
| | |
| | | changeUserName:'사용자 명 수정', |
| | | userNameCannotBeEmpty:'사용자 이름은 필수 입력 항목입니다', |
| | | }, |
| | | userLog:{ |
| | | page:{ |
| | | userListLog:'日志首页', |
| | | }, |
| | | loginName:'登录名', |
| | | userName:'用户名', |
| | | loginDate:'登录时间', |
| | | }, |
| | | orderBasicData:{ |
| | | page:{ |
| | | searchOrderBasicData:'기본 유형', |
| | | searchGlassType:'유리 분류', |
| | | searchProcessAttributeConfig:'工艺属性类别', |
| | | }, |
| | | glassCategory:'유리 분류', |
| | | order:'주문 관리', |
| | |
| | | laminatingProcessB:'중공 후 접합 공정', |
| | | laminatingProcessC:'적층 공정', |
| | | laminatingProcessD:'중공 유리 제조 공정', |
| | | please1:'请选择类别', |
| | | please2:'请输入名称', |
| | | please3:'请输入别名', |
| | | }, |
| | | machine:{ |
| | | page:{ |
| | |
| | | remarks2:'备注2', |
| | | remarks3:'备注3', |
| | | remarks4:'备注4', |
| | | otherColumns:'其他列', |
| | | msg:{ |
| | | max255:"Введите 255 символов.", |
| | | max10:"最多输入10个字符", |
| | |
| | | updateOrderIdErrorDiscrepancyInLength:'输入订单号长度不符', |
| | | updateOrderIdErrorInputNumber:'请输入数字', |
| | | updateOrderIdErrorNotNo1:'不能修改第一个单子', |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!' |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!', |
| | | pleaseProcessType:'请选择磨边类型', |
| | | pleaseUploadPicture1:"请先选择要上传的DWG文件或图片文件", |
| | | pleaseUploadPicture2:"准备上传...", |
| | | pleaseUploadPicture3:"上传中...", |
| | | pleaseUploadPicture4:"上传完成!", |
| | | pleaseUploadPicture5:"上传失败!", |
| | | pleaseUploadPicture6:"请选择DWG文件或JPG、PNG格式的图片文件", |
| | | pleaseUploadPicture7:"文件大小不能超过50MB", |
| | | pleaseUploadPicture8:"已选择文件:", |
| | | pleaseUploadPicture9:"文件上传", |
| | | pleaseUploadPicture10:"拖拽文件到此处或", |
| | | pleaseUploadPicture11:"点击选择文件", |
| | | pleaseUploadPicture12:"仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB", |
| | | pleaseUploadPicture13:"上传进度", |
| | | pleaseUploadPicture14:"上传结果", |
| | | pleaseUploadPicture15:"文件已成功转格式", |
| | | pleaseUploadPicture16:"下载", |
| | | }, |
| | | preciseMode:'精确模式', |
| | | ambiguityModels:'模糊模式', |
| | |
| | | quantity:'工程用数量', |
| | | print1:'11列4行', |
| | | print2:'6行3列', |
| | | glassId:'玻璃编号', |
| | | polysId:'小片序号', |
| | | msg:{ |
| | | msg1:'流程卡创建失败', |
| | | msg2:'请输入小于等于待分数量的数字', |
| | |
| | | pleaseMsg1:'订单存在其他金额单价没有填写', |
| | | print1:'洛阳打印无尺寸', |
| | | print2:'洛阳打印有尺寸', |
| | | orderAdd:'订单添加', |
| | | |
| | | }, |
| | | replenish:{ |
| | |
| | | changeUserName:'修改用户名称', |
| | | userNameCannotBeEmpty:'用户名称不能为空', |
| | | }, |
| | | userLog:{ |
| | | page:{ |
| | | userListLog:'日志首页', |
| | | }, |
| | | loginName:'登录名', |
| | | userName:'用户名', |
| | | loginDate:'登录时间', |
| | | }, |
| | | orderBasicData:{ |
| | | page:{ |
| | | searchOrderBasicData:'Базовый тип', |
| | | searchGlassType:'Стекло категории', |
| | | searchProcessAttributeConfig:'工艺属性类别', |
| | | }, |
| | | glassCategory:'Стекло категории', |
| | | order:'Заказы', |
| | |
| | | laminatingProcessB:'中空后合片工序', |
| | | laminatingProcessC:'夹胶工序', |
| | | laminatingProcessD:'中空工序', |
| | | please1:'请选择类别', |
| | | please2:'请输入名称', |
| | | please3:'请输入别名', |
| | | }, |
| | | machine:{ |
| | | page:{ |
| | |
| | | remarks2:'备注2', |
| | | remarks3:'备注3', |
| | | remarks4:'备注4', |
| | | otherColumns:'其他列', |
| | | msg:{ |
| | | max255:"最多输入255个字符", |
| | | max10:"最多输入10个字符", |
| | |
| | | updateOrderIdErrorDiscrepancyInLength:'输入订单号长度不符', |
| | | updateOrderIdErrorInputNumber:'请输入数字', |
| | | updateOrderIdErrorNotNo1:'不能修改第一个单子', |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!' |
| | | updateOrderError:'此订单已工艺审核或修改无法再次修改,页面将自动刷新!', |
| | | pleaseProcessType:'请选择磨边类型', |
| | | pleaseUploadPicture1:"请先选择要上传的DWG文件或图片文件", |
| | | pleaseUploadPicture2:"准备上传...", |
| | | pleaseUploadPicture3:"上传中...", |
| | | pleaseUploadPicture4:"上传完成!", |
| | | pleaseUploadPicture5:"上传失败!", |
| | | pleaseUploadPicture6:"请选择DWG文件或JPG、PNG格式的图片文件", |
| | | pleaseUploadPicture7:"文件大小不能超过50MB", |
| | | pleaseUploadPicture8:"已选择文件:", |
| | | pleaseUploadPicture9:"文件上传", |
| | | pleaseUploadPicture10:"拖拽文件到此处或", |
| | | pleaseUploadPicture11:"点击选择文件", |
| | | pleaseUploadPicture12:"仅支持 .dwg、.jpg、.png 格式文件,且文件大小不超过50MB", |
| | | pleaseUploadPicture13:"上传进度", |
| | | pleaseUploadPicture14:"上传结果", |
| | | pleaseUploadPicture15:"文件已成功转格式", |
| | | pleaseUploadPicture16:"下载", |
| | | }, |
| | | preciseMode:'精确模式', |
| | | ambiguityModels:'模糊模式', |
| | |
| | | quantity:'工程用数量', |
| | | print1:'11列4行', |
| | | print2:'6行3列', |
| | | glassId:'玻璃编号', |
| | | polysId:'小片序号', |
| | | msg:{ |
| | | msg1:'流程卡创建失败', |
| | | msg2:'请输入小于等于待分数量的数字', |
| | |
| | | pleaseMsg1:'订单存在其他金额单价没有填写', |
| | | print1:'洛阳打印无尺寸', |
| | | print2:'洛阳打印有尺寸', |
| | | orderAdd:'订单添加', |
| | | |
| | | }, |
| | | replenish:{ |
| | |
| | | changeUserName:'修改用户名称', |
| | | userNameCannotBeEmpty:'用户名称不能为空', |
| | | }, |
| | | userLog:{ |
| | | page:{ |
| | | userListLog:'日志首页', |
| | | }, |
| | | loginName:'登录名', |
| | | userName:'用户名', |
| | | loginDate:'登录时间', |
| | | }, |
| | | orderBasicData:{ |
| | | page:{ |
| | | searchOrderBasicData:'基础类型', |
| | | searchGlassType:'玻璃类别', |
| | | searchProcessAttributeConfig:'工艺属性类别', |
| | | }, |
| | | glassCategory:'玻璃类别', |
| | | order:'订单', |
| | |
| | | laminatingProcessB:'中空后合片工序', |
| | | laminatingProcessC:'夹胶工序', |
| | | laminatingProcessD:'中空工序', |
| | | please1:'请选择类别', |
| | | please2:'请输入名称', |
| | | please3:'请输入别名', |
| | | }, |
| | | machine:{ |
| | | page:{ |
| | |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'area',width: '100', title: t('order.computeGrossArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'squareMillimeter',width: '100', title: t('平方毫米')}, |
| | | {field: 'squareMillimeter',width: '100', title: t('report.thicknessArea')}, |
| | | {field: 'money',width: '100', title: t('order.grossAmount'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'order.project',width: '100', title: t('order.project'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'order.customerName',width: '100', title: t('order.customers'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | |
| | | {field: 'order.customerName',width: '100', title: t('order.customers'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'order.orderType',width: '100', title: t('order.orderType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'area',width: '100', title: t('order.computeGrossArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | | {field: 'squareMillimeter',width: '100', title: t('平方毫米')}, |
| | | {field: 'squareMillimeter',width: '100', title: t('report.thicknessArea')}, |
| | | {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}, |
| | | {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }}, |
| | |
| | | return |
| | | } |
| | | if (printMerge.value === null || printMerge.value === '') { |
| | | ElMessage.warning('请填入需要合并的层') |
| | | ElMessage.warning(t('rework.msg1')) |
| | | return |
| | | } |
| | | |
| | |
| | | return |
| | | } |
| | | if (printMerge.value === null || printMerge.value === '') { |
| | | ElMessage.warning('请填入需要合并的层') |
| | | ElMessage.warning(t('rework.msg1')) |
| | | return |
| | | } |
| | | |
| | |
| | | }, |
| | | { |
| | | field: 'polys_id', |
| | | title: t('小片序号'), |
| | | title: t('processCard.polysId'), |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged |
| | | }, |
| | | { |
| | | field: 'glass_id', |
| | | title: t('玻璃编号'), |
| | | title: t('processCard.glassId'), |
| | | filters: [{data: ''}], |
| | | slots: {filter: 'num1_filter'}, |
| | | filterMethod: filterChanged |
| | |
| | | <el-breadcrumb :separator-icon="ArrowRight"> |
| | | <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/orderBasicData/searchBasicData' }">{{ $t('orderBasicData.page.searchOrderBasicData') }}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/orderBasicData/searchGlassType' }">{{ $t('orderBasicData.page.searchGlassType') }}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/orderBasicData/searchProcessAttributeConfig' }">{{ $t('工艺属性类别') }}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/orderBasicData/searchProcessAttributeConfig' }">{{ $t('orderBasicData.page.searchProcessAttributeConfig') }}</el-breadcrumb-item> |
| | | <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">报表</el-breadcrumb-item> |
| | | </el-breadcrumb> |
| | | </div> |
| | |
| | | {title: t('basicData.operate'), width: 110, slots: { default: 'button_slot' },fixed:"left",}, |
| | | {type: 'seq', title: t('basicData.number'), width: 80 ,fixed:"left",}, |
| | | {field:'level',title: t('orderBasicData.level')}, |
| | | {field:'processType',title: t('别名'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged}, |
| | | {field:'processType',title: t('orderBasicData.alias'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged}, |
| | | {field:'processName',title: t('orderBasicData.name'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged}, |
| | | {field:'inputType',title: t('类型')}, |
| | | {field:'inputType',title: t('machine.type')}, |
| | | {field:'createTime',title: t('basicData.creationTime')} |
| | | ], |
| | | |
| | |
| | | |
| | | const saveBasicData = (type) =>{ |
| | | if(submit.value.glassLevel[0]===null){ |
| | | ElMessage.warning("请选择类别") |
| | | ElMessage.warning(t('orderBasicData.please1')) |
| | | return |
| | | } |
| | | if(submit.value.processName===null||submit.value.processName===""){ |
| | | ElMessage.warning("请输入名称") |
| | | ElMessage.warning(t('orderBasicData.please2')) |
| | | return |
| | | } |
| | | if(submit.value.processType===null||submit.value.processType===""){ |
| | | ElMessage.warning("请输入别名") |
| | | ElMessage.warning(t('orderBasicData.please3')) |
| | | return |
| | | } |
| | | submit.value.type = type |
| | |
| | | /> |
| | | </el-row> |
| | | <el-row> |
| | | 别名:<el-input style="width: 250px;" v-model="submit.processType"/> |
| | | {{ $t('orderBasicData.alias') }}:<el-input style="width: 250px;" v-model="submit.processType"/> |
| | | </el-row> |
| | | <el-row> |
| | | 名称:<el-input style="width: 250px;" v-model="submit.processName"/> |
| | | {{ $t('orderBasicData.name') }}:<el-input style="width: 250px;" v-model="submit.processName"/> |
| | | </el-row> |
| | | <el-row> |
| | | 类型:<el-input style="width: 250px;" v-model="submit.inputType"/> |
| | | {{ $t('machine.type') }}:<el-input style="width: 250px;" v-model="submit.inputType"/> |
| | | </el-row> |
| | | <el-row> |
| | | <el-button v-if="!rowIndex" @click="saveBasicData('add')" type="primary">{{ $t('basicData.insert') }}</el-button> |
| | |
| | | {'code': 'addToExamine', 'name': t('reportingWorks.saveAndReview'),status: 'primary',icon: 'vxe-icon-save'}, |
| | | {'code': 'toExamine', 'name': t('basicData.review'),status: 'primary'}, |
| | | {'code': 'CounterExamination', 'name': t('basicData.cancelReview'),status: 'primary'}, |
| | | //{'code': 'addOtherOrders','name': t('订单添加'),'status': 'primary'} |
| | | //{'code': 'addOtherOrders','name': t('delivery.orderAdd'),'status': 'primary'} |
| | | //{'code': 'glassShelf', 'name': t('finishedGlassShelf.finishedGlassShelfEmit'),status: 'primary'} |
| | | ], |
| | | /*import: false, |
| | |
| | | |
| | | <el-dialog |
| | | v-model="dialogSelectOrderVisible" |
| | | :title="t('订单添加')" |
| | | :title="t('delivery.orderAdd')" |
| | | style="width: 70%;height:75% " |
| | | destroy-on-close |
| | | :close-on-click-modal="false" |
| | |
| | | { code: 'updateOrderId', name: t('searchOrder.updateOrderId'), prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: false }, |
| | | { code: 'reportingTransfer', name: t('searchOrder.reportingTransfer'), prefixIcon: 'vxe-icon-send', visible: true, disabled: true }, |
| | | { code: 'uploadPicture', name: t('order.graphic'),prefixIcon: 'vxe-icon-picture-fill', visible: true, }, |
| | | { code: 'fileUpload', name: t('上传文件'),prefixIcon: 'vxe-icon-picture-fill', visible: true, } |
| | | { code: 'fileUpload', name: t('order.fileUpload'),prefixIcon: 'vxe-icon-picture-fill', visible: true, } |
| | | ] |
| | | ] |
| | | } |
| | |
| | | { |
| | | field: 'processAttribute', |
| | | width: 160, |
| | | title: t('工艺属性'), |
| | | title: t('craft.processAttribute'), |
| | | filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged |
| | | }, |
| | | {field: 'processingNote',width:200, title: t('order.processingNote'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged}, |
| | |
| | | const { t } = useI18n() |
| | | const router = useRouter() |
| | | const route = useRoute() |
| | | const dialogVisible = ref(false) |
| | | const dialogVisibleProcess = ref(false) |
| | | let roleList = ref([]) |
| | | //工序 |
| | | const processValue = ref() |
| | |
| | | //表头参数 |
| | | columns:[ |
| | | {type: 'seq', title: t('basicData.Number'), width: 80 ,fixed:"left"}, |
| | | {field: 'operator_id',width:120, title: t('登录名'), sortable: true, filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged}, |
| | | {field: 'operator',width:120, title: t('用户名'), sortable: true, filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged}, |
| | | {field: 'format_create_time',width:160, title: t('登录时间'),sortable: true}, |
| | | {field: 'operator_id',width:120, title: t('userLog.loginName'), sortable: true, filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged}, |
| | | {field: 'operator',width:120, title: t('userLog.userName'), sortable: true, filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged}, |
| | | {field: 'format_create_time',width:160, title: t('userLog.loginDate'),sortable: true}, |
| | | ], |
| | | |
| | | //表头按钮 |
| | |
| | | |
| | | const getTableRow = (row,type) => { |
| | | switch (type) { |
| | | case 'edit': { |
| | | userRole.value.roles = [] |
| | | dialogVisible.value = true |
| | | row.userRoleList.forEach(item=>{ |
| | | userRole.value.roles.push(item.roleId) |
| | | }) |
| | | userRole.value.userId = row.id |
| | | break |
| | | } |
| | | case 'delete': { |
| | | request.post(`/userInfo/userDelete/${row.id}`).then((res) => { |
| | | if(res.code==200 && res.data ===true){ |
| | | ElMessage.success(t('searchOrder.msgDeleteSuccess')) |
| | | router.push({path:'/main/user/userList',query:{random:Math.random()}}) |
| | | }else{ |
| | | ElMessage.warning(t('searchOrder.msgDeleteFail')) |
| | | } |
| | | }) |
| | | break |
| | | } |
| | | case 'editProcess': { |
| | | dialogVisibleProcess.value = true |
| | | processRow.value.userId = row.id |
| | | break |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | </div> |
| | | </template> |
| | | |
| | | <template #button_slot="{ row }"> |
| | | <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">{{ $t('user.setUpRoles') }}</el-button> |
| | | <el-button @click="getTableRow(row,'editProcess')" link type="primary" size="small">{{ $t('user.setProcess') }}</el-button> |
| | | <el-popconfirm @confirm="getTableRow(row,'delete')" :title="$t('searchOrder.deleteConfirm')"> |
| | | <template #reference> |
| | | <el-button link type="primary" size="small">{{ $t('basicData.delete') }}</el-button> |
| | | </template> |
| | | </el-popconfirm> |
| | | </template> |
| | | |
| | | |
| | | <template #num1_filter="{ column, $panel }"> |
| | | <div> |
| | |
| | | </vxe-grid> |
| | | </div> |
| | | |
| | | <el-dialog |
| | | v-model="dialogVisible" |
| | | :title="$t('user.roleSelection')" |
| | | width="30%" |
| | | :before-close="handleClose" |
| | | > |
| | | <span> |
| | | <el-radio v-for="(item) in roleList" |
| | | :label="item.id" |
| | | v-model="userRole.roles" > |
| | | {{item.role}} |
| | | </el-radio> |
| | | </span> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="dialogVisible = false">{{ $t('basicData.cancelButtonText') }}</el-button> |
| | | <el-button type="primary" @click="roleUpdate"> |
| | | {{ $t('basicData.confirmButtonText') }} |
| | | </el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog |
| | | v-model="dialogVisibleProcess" |
| | | :title="$t('user.roleSelection')" |
| | | width="30%" |
| | | :before-close="handleClose" |
| | | > |
| | | <el-select v-model="processValue" clearable :placeholder="$t('reportingWorks.selectProcess')" default-value="default_city" style="width: 120px"> |
| | | <el-option |
| | | v-for="item in processRow['process']" |
| | | :key="item.id" |
| | | :label="item.basic_name" |
| | | :value="item.basic_name" |
| | | /> |
| | | </el-select> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="dialogVisibleProcess = false">{{ $t('basicData.cancelButtonText') }}</el-button> |
| | | <el-button type="primary" @click="updateProcess"> |
| | | {{ $t('basicData.confirmButtonText') }} |
| | | </el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | |
| | | |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | <div id="main-div"> |
| | | <div id="div-title"> |
| | | <el-breadcrumb :separator-icon="ArrowRight"> |
| | | <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/userLog/userListLog' }">{{$t('日志首页')}}</el-breadcrumb-item> |
| | | <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/userLog/userListLog' }">{{$t('userLog.page.userListLog')}}</el-breadcrumb-item> |
| | | <el-breadcrumb-item v-show="false" /> |
| | | </el-breadcrumb> |
| | | </div> |