Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine
| | |
| | | prop="packageCode" |
| | | required |
| | | class="uFormItem" |
| | | > |
| | | <u-input |
| | | > |
| | | v-model.trim="warehouse.packageCode" |
| | | @confirm="getContainerData(1)" |
| | | placeholder="请录入或扫码" |
| | |
| | | :class="item.checked ? 'bg_item' : ''" |
| | | class="fontSize32rpx width margin_auto background_fff padding10 relative box_sizing transition" |
| | | > |
| | | <!-- 部件名称 upi、材料、尺寸,位置、板件状态 --> |
| | | <u-row> |
| | | <u-col span="12" class="flex align-center"> |
| | | <!-- <u-checkbox v-model="item.checked" size="50rpx"></u-checkbox> --> |
| | |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 部件名称: {{ item.detailName }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | <text class="color_80"> 位置:{{ item.location }} </text> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 位置:{{ getAreaCodeEnumName(item.areaCode) }} |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 材料:{{ item.info18 }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 尺寸:{{ item.info16 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 板件状态:{{ getEnumName(item.upiStatus) }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 次序:{{ item.shelf }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 生产单号:{{ item.info5 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> |
| | | 包装编号:{{ item.packageCode }}</text |
| | | > |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 批次号:{{ item.planNo }}</text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | </view> |
| | |
| | | </u-swipe-action> |
| | | </view> |
| | | <modal-code :rescode="rescode" :resmessage="resmessage" ref="resmodal" /> |
| | | |
| | | <u-popup |
| | | v-model="detailshow" |
| | | border-radius="14" |
| | | @close="detailshow = false" |
| | | mode="bottom" |
| | | > |
| | | <h2 class="text_align_center padding_bottom18 padding15">信息</h2> |
| | | <div style="height: 400px; overflow-y: auto; padding: 0 15rpx"> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">订单号</text> |
| | | <text>{{ materlist.orderId }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">长</text> |
| | | <text>{{ materlist.length }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">宽</text> |
| | | <text>{{ materlist.width }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">厚</text> |
| | | <text>{{ materlist.thk }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">行号</text> |
| | | <text>{{ materlist.lineNumber }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件纹理</text> |
| | | <text>{{ materlist.Matgrid }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">打孔设备编号</text> |
| | | <text>{{ materlist.DRNum }}</text> |
| | | </view> --> |
| | | |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">锯切图号</text> |
| | | <text>{{ materlist.materialIndex }}</text> |
| | | </view> --> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装X坐标</text> |
| | | <text>{{ materlist.machineXCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Y坐标</text> |
| | | <text>{{ materlist.machineYCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Z坐标</text> |
| | | <text>{{ materlist.machineZCenter }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">转向角度</text> |
| | | <text>{{ materlist.rotation }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">层数</text> |
| | | <text>{{ materlist.sequence }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">销售合同单号</text> |
| | | <text>{{ materlist.info4 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">生产单号</text> |
| | | <text>{{ materlist.info5 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">第几包</text> |
| | | <text>{{ materlist.info6 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">经销店名称</text> |
| | | <text>{{ materlist.info7 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">产品名称</text> |
| | | <text>{{ materlist.info8 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装编码</text> |
| | | <text>{{ materlist.info9 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">客户名称</text> |
| | | <text>{{ materlist.info10 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">自提或发货</text> |
| | | <text>{{ materlist.info11 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装部件总数量</text> |
| | | <text>{{ materlist.info12 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装面积</text> |
| | | <text>{{ materlist.info13 }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件名称</text> |
| | | <text>{{ materlist.info14 }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">部件数量</text> |
| | | <text>{{ materlist.info15 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">部件尺寸</text> |
| | | <text>{{ materlist.info16 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装机械手旋转</text> |
| | | <text>{{ materlist.info17 }}</text> |
| | | </view> |
| | | </div> |
| | | </u-popup> |
| | | |
| | | <button-modal |
| | | :subShow="true" |
| | |
| | | resmessage: "", |
| | | options: [ |
| | | { |
| | | text: "打印", |
| | | text: "详情", |
| | | style: { |
| | | backgroundColor: "#fc9f35", |
| | | }, |
| | |
| | | gridable: true, |
| | | kwbhAllowed: false, |
| | | enumList: [], |
| | | areaCodeEnum: [], |
| | | }; |
| | | }, |
| | | components: { |
| | |
| | | }).then((res) => { |
| | | this.enumList = res.result || []; |
| | | }); |
| | | getenumDataList({ |
| | | EnumName: "AreaCodeEnum", |
| | | }).then((res) => { |
| | | this.areaCodeEnum = res.result || []; |
| | | }); |
| | | }, |
| | | onLoad() { |
| | | this.operator = JSON.parse(uni.getStorageSync("userInfo")).name; |
| | |
| | | methods: { |
| | | getEnumName(value) { |
| | | const name = this.enumList.find((item) => item.value === value); |
| | | return name ? name.name : ""; |
| | | }, |
| | | getAreaCodeEnumName(value) { |
| | | const name = this.areaCodeEnum.find((item) => item.value === value); |
| | | return name ? name.name : ""; |
| | | }, |
| | | // 如果打开一个的时候,不需要关闭其他,则无需实现本方法 |
| | |
| | | uni.showToast({ |
| | | title: "数据不存在", |
| | | icon: "none", |
| | | duration: 2000, |
| | | duration: 5000, |
| | | }); |
| | | this.singlist = []; |
| | | return; |
| | | } |
| | | |
| | | this.singlist = res.result; |
| | | }); |
| | | }, |
| | |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 部件名称: {{ item.detailName }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | <text class="color_80"> 位置:{{ item.location }} </text> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 位置:{{ getAreaCodeEnumName(item.areaCode) }} |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 材料:{{ item.info18 }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 尺寸:{{ item.info16 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 板件状态:{{ getEnumName(item.upiStatus) }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 次序:{{ item.shelf }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 生产单号:{{ item.info5 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> |
| | | 包装编号:{{ item.packageCode }}</text |
| | | > |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 批次号:{{ item.planNo }}</text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | </view> |
| | |
| | | </u-swipe-action> |
| | | </view> |
| | | <modal-code :rescode="rescode" :resmessage="resmessage" ref="resmodal" /> |
| | | <u-popup |
| | | v-model="detailshow" |
| | | border-radius="14" |
| | | @close="detailshow = false" |
| | | mode="bottom" |
| | | > |
| | | <h2 class="text_align_center padding_bottom18 padding15">信息</h2> |
| | | <div style="height: 400px; overflow-y: auto; padding: 0 15rpx"> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">订单号</text> |
| | | <text>{{ materlist.orderId }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">长</text> |
| | | <text>{{ materlist.length }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">宽</text> |
| | | <text>{{ materlist.width }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">厚</text> |
| | | <text>{{ materlist.thk }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">行号</text> |
| | | <text>{{ materlist.lineNumber }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件纹理</text> |
| | | <text>{{ materlist.Matgrid }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">打孔设备编号</text> |
| | | <text>{{ materlist.DRNum }}</text> |
| | | </view> --> |
| | | |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">锯切图号</text> |
| | | <text>{{ materlist.materialIndex }}</text> |
| | | </view> --> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装X坐标</text> |
| | | <text>{{ materlist.machineXCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Y坐标</text> |
| | | <text>{{ materlist.machineYCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Z坐标</text> |
| | | <text>{{ materlist.machineZCenter }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">转向角度</text> |
| | | <text>{{ materlist.rotation }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">层数</text> |
| | | <text>{{ materlist.sequence }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">销售合同单号</text> |
| | | <text>{{ materlist.info4 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">生产单号</text> |
| | | <text>{{ materlist.info5 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">第几包</text> |
| | | <text>{{ materlist.info6 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">经销店名称</text> |
| | | <text>{{ materlist.info7 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">产品名称</text> |
| | | <text>{{ materlist.info8 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装编码</text> |
| | | <text>{{ materlist.info9 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">客户名称</text> |
| | | <text>{{ materlist.info10 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">自提或发货</text> |
| | | <text>{{ materlist.info11 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装部件总数量</text> |
| | | <text>{{ materlist.info12 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装面积</text> |
| | | <text>{{ materlist.info13 }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件名称</text> |
| | | <text>{{ materlist.info14 }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">部件数量</text> |
| | | <text>{{ materlist.info15 }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件尺寸</text> |
| | | <text>{{ materlist.info16 }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装机械手旋转</text> |
| | | <text>{{ materlist.info17 }}</text> |
| | | </view> |
| | | </div> |
| | | </u-popup> |
| | | <button-modal |
| | | :issueShow="true" |
| | | issueTitle="重置" |
| | |
| | | resmessage: "", |
| | | options: [ |
| | | { |
| | | text: "打印", |
| | | text: "详情", |
| | | style: { |
| | | backgroundColor: "#fc9f35", |
| | | }, |
| | |
| | | gridable: true, |
| | | kwbhAllowed: false, |
| | | enumList: [], |
| | | areaCodeEnum: [], |
| | | }; |
| | | }, |
| | | components: { |
| | |
| | | }).then((res) => { |
| | | this.enumList = res.result || []; |
| | | }); |
| | | getenumDataList({ |
| | | EnumName: "AreaCodeEnum", |
| | | }).then((res) => { |
| | | this.areaCodeEnum = res.result || []; |
| | | }); |
| | | }, |
| | | onLoad() { |
| | | this.operator = JSON.parse(uni.getStorageSync("userInfo")).name; |
| | |
| | | methods: { |
| | | getEnumName(value) { |
| | | const name = this.enumList.find((item) => item.value === value); |
| | | return name ? name.name : ""; |
| | | }, |
| | | getAreaCodeEnumName(value) { |
| | | const name = this.areaCodeEnum.find((item) => item.value === value); |
| | | return name ? name.name : ""; |
| | | }, |
| | | //获取的信息 |
| | |
| | | uni.showToast({ |
| | | title: "数据不存在", |
| | | icon: "none", |
| | | duration: 2000, |
| | | duration: 5000, |
| | | }); |
| | | this.singlist = []; |
| | | return; |
| | |
| | | </cu-custom> |
| | | <u-form |
| | | labelPosition="left" |
| | | label-width="180rpx" |
| | | label-width="250rpx" |
| | | :model="warehouse" |
| | | ref="warehouseRef" |
| | | > |
| | |
| | | > |
| | | <u-col span="12"> |
| | | <u-form-item |
| | | label="包装号:" |
| | | prop="packageCode" |
| | | label="包装号/部件条码:" |
| | | prop="upi" |
| | | required |
| | | class="uFormItem" |
| | | > |
| | | <u-input |
| | | v-model.trim="warehouse.packageCode" |
| | | @focus="warehouse.packageCode = ''" |
| | | v-model.trim="warehouse.upi" |
| | | @focus="warehouse.upi = ''" |
| | | @confirm="getContainerData(1)" |
| | | placeholder="请录入或扫码" |
| | | class="width" |
| | |
| | | </u-form-item> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row |
| | | <!-- <u-row |
| | | class="border_bottom margin_top10rpx padding_left25rpx" |
| | | style="background-color: #fff" |
| | | > |
| | | <u-col span="12"> |
| | | <u-form-item label="部件条码:" class="uFormItem"> |
| | | <u-form-item label=":" class="uFormItem"> |
| | | <u-input |
| | | v-model="warehouse.upi" |
| | | ref="materialRef" |
| | |
| | | </u-input> |
| | | </u-form-item> |
| | | </u-col> |
| | | </u-row> |
| | | </u-row> --> |
| | | </u-form> |
| | | |
| | | <!-- 列表 --> |
| | | <view class="margin_top10rpx"> |
| | | <u-swipe-action |
| | |
| | | :class="item.checked ? 'bg_item' : ''" |
| | | class="fontSize32rpx width margin_auto background_fff padding10 relative box_sizing transition" |
| | | > |
| | | <!-- 部件名称 upi、材料、尺寸,位置、板件状态 --> |
| | | <u-row> |
| | | <u-col span="12" class="flex align-center"> |
| | | <!-- <u-checkbox v-model="item.checked" size="50rpx"></u-checkbox> --> |
| | |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 部件名称: {{ item.detailName }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | <text class="color_80"> 位置:{{ item.location }} </text> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 位置:{{ getAreaCodeEnumName(item.areaCode) }} |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 材料:{{ item.info18 }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 尺寸:{{ item.info16 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="8"> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | 板件状态:{{ getEnumName(item.upiStatus) }} |
| | | </text> |
| | | </u-col> |
| | | <u-col span="4"> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 次序:{{ item.shelf }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 生产单号:{{ item.info5 }} </text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> |
| | | 包装编号:{{ item.packageCode }}</text |
| | | > |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | <u-row> |
| | | <u-col span="12"> |
| | | <text class="color_80 padding_left25rpx"> |
| | | <text class="color_80"> 批次号:{{ item.planNo }}</text> |
| | | </text> |
| | | </u-col> |
| | | </u-row> |
| | | </view> |
| | |
| | | </u-swipe-action> |
| | | </view> |
| | | <modal-code :rescode="rescode" :resmessage="resmessage" ref="resmodal" /> |
| | | <u-popup |
| | | v-model="detailshow" |
| | | border-radius="14" |
| | | @close="detailshow = false" |
| | | mode="bottom" |
| | | > |
| | | <h2 class="text_align_center padding_bottom18 padding15">信息</h2> |
| | | <div style="height: 400px; overflow-y: auto; padding: 0 15rpx"> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">订单号</text> |
| | | <text>{{ materlist.orderId }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">长</text> |
| | | <text>{{ materlist.length }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">宽</text> |
| | | <text>{{ materlist.width }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">厚</text> |
| | | <text>{{ materlist.thk }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">行号</text> |
| | | <text>{{ materlist.lineNumber }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件纹理</text> |
| | | <text>{{ materlist.Matgrid }}</text> |
| | | </view> --> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">打孔设备编号</text> |
| | | <text>{{ materlist.DRNum }}</text> |
| | | </view> --> |
| | | |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">锯切图号</text> |
| | | <text>{{ materlist.materialIndex }}</text> |
| | | </view> --> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装X坐标</text> |
| | | <text>{{ materlist.machineXCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Y坐标</text> |
| | | <text>{{ materlist.machineYCenter }}</text> |
| | | </view> |
| | | |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装Z坐标</text> |
| | | <text>{{ materlist.machineZCenter }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">转向角度</text> |
| | | <text>{{ materlist.rotation }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">层数</text> |
| | | <text>{{ materlist.sequence }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">销售合同单号</text> |
| | | <text>{{ materlist.info4 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">生产单号</text> |
| | | <text>{{ materlist.info5 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">第几包</text> |
| | | <text>{{ materlist.info6 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">经销店名称</text> |
| | | <text>{{ materlist.info7 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">产品名称</text> |
| | | <text>{{ materlist.info8 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装编码</text> |
| | | <text>{{ materlist.info9 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">客户名称</text> |
| | | <text>{{ materlist.info10 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">自提或发货</text> |
| | | <text>{{ materlist.info11 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装部件总数量</text> |
| | | <text>{{ materlist.info12 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装面积</text> |
| | | <text>{{ materlist.info13 }}</text> |
| | | </view> |
| | | <!-- <view class="line flex justify-between"> |
| | | <text class="text-gray">部件名称</text> |
| | | <text>{{ materlist.info14 }}</text> |
| | | </view> --> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">部件数量</text> |
| | | <text>{{ materlist.info15 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">部件尺寸</text> |
| | | <text>{{ materlist.info16 }}</text> |
| | | </view> |
| | | <view class="line flex justify-between"> |
| | | <text class="text-gray">包装机械手旋转</text> |
| | | <text>{{ materlist.info17 }}</text> |
| | | </view> |
| | | </div> |
| | | </u-popup> |
| | | <button-modal |
| | | :subShow="true" |
| | | garmenTitle="重置" |
| | |
| | | return { |
| | | operator: "", |
| | | warehouse: { |
| | | packageCode: "", |
| | | upi: "", |
| | | materialCode: "", |
| | | dutyCycle: "", |
| | | gridNumber: 1, |
| | |
| | | resmessage: "", |
| | | options: [ |
| | | { |
| | | text: "打印", |
| | | text: "详情", |
| | | style: { |
| | | backgroundColor: "#fc9f35", |
| | | }, |
| | |
| | | gridable: true, |
| | | kwbhAllowed: false, |
| | | enumList: [], |
| | | areaCodeEnum: [], |
| | | }; |
| | | }, |
| | | components: { |
| | |
| | | }).then((res) => { |
| | | this.enumList = res.result || []; |
| | | }); |
| | | |
| | | getenumDataList({ |
| | | EnumName: "AreaCodeEnum", |
| | | }).then((res) => { |
| | | this.areaCodeEnum = res.result || []; |
| | | }); |
| | | |
| | | }, |
| | | onLoad() { |
| | | this.operator = JSON.parse(uni.getStorageSync("userInfo")).name; |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | mounted() {}, |
| | | |
| | | methods: { |
| | | getEnumName(value) { |
| | | const name = this.enumList.find((item) => item.value === value); |
| | | return name ? name.name : ""; |
| | | }, |
| | | getAreaCodeEnumName(value) { |
| | | const name = this.areaCodeEnum.find((item) => item.value === value); |
| | | return name? name.name : ""; |
| | | }, |
| | | // 如果打开一个的时候,不需要关闭其他,则无需实现本方法 |
| | |
| | | |
| | | rest() { |
| | | this.warehouse.upi = ""; |
| | | this.warehouse.packageCode = ""; |
| | | this.warehouse.upi = ""; |
| | | this.singlist = []; |
| | | }, |
| | | //检查容器栅格数 |
| | | checkGrid() {}, |
| | | //获取容器的信息 |
| | | getContainerData(param) { |
| | | if (param == 1) { |
| | | this.warehouse.upi = ""; |
| | | } |
| | | if (!this.warehouse.packageCode) { |
| | | if (!this.warehouse.upi) { |
| | | uni.showToast({ |
| | | title: "请扫包装号", |
| | | icon: "none", |
| | |
| | | return; |
| | | } |
| | | getBhbMaterialList({ |
| | | packageCode: this.warehouse.packageCode, |
| | | upi: this.warehouse.upi, |
| | | }).then((res) => { |
| | | const result = res.result; |
| | |
| | | uni.showToast({ |
| | | title: "没有查到数据", |
| | | icon: "none", |
| | | duration: 2000, |
| | | duration: 5000, |
| | | }); |
| | | this.singlist = []; |
| | | return; |
| | |
| | | this.ordersId = 0; |
| | | this.singlist = []; |
| | | this.$refs.warehouseRef.resetFields(); |
| | | this.warehouse.packageCode = ""; |
| | | this.warehouse.upi = ""; |
| | | }, |
| | | }, |
| | | |
| | | }; |
| | | </script> |
| | | <style lang="scss"> |
| | |
| | | import { wmsStockPassMap, wmsHomePageQuery, wmsHomePlaceQuery, wmsTransitionDiagramQuery } from '/@/api/main/inventoryWarning/inventoryWarning'; |
| | | import type { TabsPaneContext } from 'element-plus'; |
| | | import { useRoute, useRouter } from 'vue-router'; |
| | | import { getStorageView } from '/@/api/main/ReportCenter/storageView'; |
| | | const router = useRouter(); |
| | | // 接口数据 |
| | | const loadingwms = ref(false); |
| | | const pieChartRef = ref(null); |
| | | let myChart = null; |
| | | let countList = ref([ |
| | | { |
| | | type: 0, |
| | | name: '总库位', |
| | | value: 0, |
| | | }, |
| | | { |
| | | type: 1, |
| | | name: '有货库位', |
| | | value: 0, |
| | | }, |
| | | { |
| | | type: 2, |
| | | name: '无货库位', |
| | | value: 0, |
| | | }, |
| | | { |
| | | type: 3, |
| | | name: '锁定库位', |
| | | value: 0, |
| | | }, |
| | | ]); |
| | | const optionPie = { |
| | | title: { |
| | | text: '缓存岛统计', |
| | | left: 'center', |
| | | text: '缓存岛库存', |
| | | // left: 'center', |
| | | textStyle: { |
| | | color: '#333', |
| | | }, |
| | |
| | | }, |
| | | legend: { |
| | | orient: 'vertical', |
| | | left: 'left', |
| | | left: 'right', |
| | | }, |
| | | series: [ |
| | | { |
| | | name: '库位状态', |
| | | type: 'pie', |
| | | radius: ['50%', '70%'], |
| | | data: [ |
| | | { name: '总库位360', value: 120 }, |
| | | { name: '有货库位', value: 90 }, |
| | | { name: '无货库位', value: 60 }, |
| | | { name: '锁定库位', value: 30 }, |
| | | ], |
| | | radius: ['35%', '55%'], |
| | | data: [], |
| | | // data: [ |
| | | // { name: '总库位360', value: 120 }, |
| | | // { name: '有货库位', value: 90 }, |
| | | // { name: '无货库位', value: 60 }, |
| | | // { name: '锁定库位', value: 30 }, |
| | | // ], |
| | | emphasis: { |
| | | itemStyle: { |
| | | shadowBlur: 10, |
| | |
| | | }, |
| | | }, |
| | | label: { |
| | | formatter: '{b}: {c} ({d}%)', |
| | | // formatter: '{b}: {c} ({d}%)', |
| | | formatter: '{b}: {c}', |
| | | }, |
| | | }, |
| | | ], |
| | | }; |
| | | |
| | | onMounted(() => { |
| | | nextTick(() => { |
| | | myChart = echarts.init(document.getElementById('homePieChart') as HTMLDivElement); |
| | | const data = [ |
| | | { name: '总库位360', value: 120 }, |
| | | { name: '有货库位', value: 90 }, |
| | | { name: '无货库位', value: 60 }, |
| | | { name: '锁定库位', value: 30 }, |
| | | nextTick(async () => { |
| | | |
| | | |
| | | var res = await getStorageView(); |
| | | debugger |
| | | if (res.data.code == 200) { |
| | | const { data } = res; |
| | | const result = data.result; |
| | | // 统计 |
| | | var hasMaterialCount = result.filter((item: any) => item.stockStatus == 1).length || 0; |
| | | var noMaterialCount = result.length - hasMaterialCount; |
| | | countList.value = [ |
| | | { |
| | | type: '', |
| | | name: '总库位', |
| | | value: result.length || 0, |
| | | }, |
| | | { |
| | | type: 1, |
| | | name: '有货库位', |
| | | value: hasMaterialCount || 0, |
| | | }, |
| | | { |
| | | type: 18, |
| | | name: '无货库位', |
| | | value: noMaterialCount || 0, |
| | | }, |
| | | { |
| | | type: 2, |
| | | name: '锁定库位', |
| | | value: result.filter((item: any) => item.stockStatus == 2).length || 0, |
| | | }, |
| | | ]; |
| | | optionPie.series[0].data = countList.value; |
| | | myChart = echarts.init(document.getElementById('homePieChart') as HTMLDivElement); |
| | | myChart.setOption(optionPie); |
| | | |
| | | |
| | | } |
| | | }); |
| | | }); |
| | | |
| | |
| | | initEchartsResizeFun(); |
| | | } |
| | | ); |
| | | // 监听 pinia 中是否开启深色主题 |
| | | watch( |
| | | () => themeConfig.value.isIsDark, |
| | | (isIsDark) => { |
| | | nextTick(() => { |
| | | state.charts.theme = isIsDark ? 'dark' : ''; |
| | | state.charts.bgColor = isIsDark ? 'transparent' : ''; |
| | | state.charts.color = isIsDark ? '#dadada' : '#303133'; |
| | | setTimeout(() => { |
| | | initLineChart(null, null, null); |
| | | }, 500); |
| | | setTimeout(() => { |
| | | initPieChart(null); |
| | | }, 700); |
| | | // // 监听 pinia 中是否开启深色主题 |
| | | // watch( |
| | | // () => themeConfig.value.isIsDark, |
| | | // (isIsDark) => { |
| | | // nextTick(() => { |
| | | // state.charts.theme = isIsDark ? 'dark' : ''; |
| | | // state.charts.bgColor = isIsDark ? 'transparent' : ''; |
| | | // state.charts.color = isIsDark ? '#dadada' : '#303133'; |
| | | // setTimeout(() => { |
| | | // initBarChart(null,null,null,null); |
| | | // }, 1000); |
| | | }); |
| | | }, |
| | | { |
| | | deep: true, |
| | | immediate: true, |
| | | } |
| | | ); |
| | | // initLineChart(null, null, null); |
| | | // }, 500); |
| | | // setTimeout(() => { |
| | | // initPieChart(null); |
| | | // }, 700); |
| | | // // setTimeout(() => { |
| | | // // initBarChart(null,null,null,null); |
| | | // // }, 1000); |
| | | // }); |
| | | // }, |
| | | // { |
| | | // deep: true, |
| | | // immediate: true, |
| | | // } |
| | | // ); |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |