orderMsg.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <template>
  2. <view class="mainBox">
  3. <uni-nav-bar
  4. fixed="true"
  5. statusBar="true"
  6. left-icon="back"
  7. title="订单详情"
  8. @clickLeft="back"
  9. >
  10. </uni-nav-bar>
  11. <view class="report-view">
  12. <view class="card-list">
  13. <view class="list-item" v-for="(item, index) in msgList" :key='index'>
  14. <view class="label">{{item.label}}</view>
  15. <view v-if="item.type == 'checked'">
  16. <uni-data-checkbox multiple :value="[orderInfo[item.key]]" :disabled='true' :localdata="[{text:'', value: '1'}]"></uni-data-checkbox>
  17. </view>
  18. <view v-else-if="item.type == 'close'">
  19. <uni-data-checkbox multiple :value="[orderInfo[item.key]]" :disabled='true' :localdata="[{text:'', value: '关闭'}]"></uni-data-checkbox>
  20. </view>
  21. <view v-else>{{item.formatter && item.formatter(orderInfo[item.key]) || orderInfo[item.key]}}</view>
  22. </view>
  23. </view>
  24. </view>
  25. </view>
  26. </template>
  27. <script>
  28. import { getOrderInfo } from "@/api/report/index"
  29. export default {
  30. data(){
  31. return {
  32. msgList:[
  33. // { label: '关闭', key: 'orderStatus', type:'close'},
  34. { label: '状态', key: 'orderStatus'},
  35. { label: '生产订单', key: 'aufnr'},
  36. { label: 'MRP控制者', key: 'dispo'},
  37. { label: '计划编号', key: 'cySeqnr'},
  38. { label: '物料代码', key: 'matnr'},
  39. { label: '物料描述', key: 'maktx'},
  40. { label: '牌号', key: 'zph'},
  41. { label: '型号', key: 'zxh'},
  42. { label: '目标数量', key: 'gamng'},
  43. { label: '投料数量', key: 'feed'},
  44. { label: '收货数量', key: 'oneReciver'},
  45. { label: '在制品数量', key: 'workProgress'},
  46. { label: '投料', key: 'feedFlag', type:'checked'},
  47. { label: '报工', key: 'workFlag', type:'checked'},
  48. { label: '收货', key: 'oneFlag', type:'checked'},
  49. { label: '备注', key: 'ktext'},
  50. { label: '生产版本', key: 'verid'},
  51. { label: '版本名称', key: 'veridText'},
  52. { label: '目标KG', key: 'reciverNum'},
  53. // { label: '投料KG', key: 'a'},
  54. // { label: '在制品KG', key: 'a'},
  55. { label: '单位', key: 'meins'},
  56. { label: '打印', key: 'printNum'},
  57. { label: '批次(混合料厂专用)', key: 'reciverBatch'},
  58. { label: '交货期', key: 'reciverTime'},
  59. { label: '销售订单号', key: 'kdauf'},
  60. { label: '行号', key: 'kdpos'},
  61. // { label: '单重', key: 'ntgew'},
  62. { label: '产品层次4', key: 'levelFour'},
  63. { label: '产品层次5', key: 'levelFive'},
  64. { label: '关闭日期', key: 'closeDatetime'},
  65. { label: 'BOM物料代码', key: 'bomMatnr'},
  66. { label: 'BOM牌号', key: 'bomZph'},
  67. { label: 'BOM型号', key: 'bomZxh'},
  68. { label: 'BOM物料描述', key: 'bomMaktx'},
  69. { label: '副产品收货重量', key: 'fiveReciverWeight'},
  70. { label: '工厂代码', key: 'dwerk'},
  71. { label: '计划类型', key: 'planType', formatter(val){
  72. const map = {
  73. 1: '内销', 2: '工厂内内转', 3: '工厂间内转', 4: '外销'
  74. }
  75. return map[val]
  76. }},
  77. ],
  78. orderInfo:{}
  79. }
  80. },
  81. onLoad({orderCode}){
  82. if(orderCode){
  83. this.handleSearch(orderCode)
  84. }
  85. },
  86. methods:{
  87. async handleSearch(orderCode){
  88. this.orderInfo = {}
  89. const res = await getOrderInfo(orderCode)
  90. this.orderInfo = res
  91. },
  92. },
  93. };
  94. </script>
  95. <style lang='scss' scoped>
  96. .mainBox{
  97. background: $page-bg;
  98. height: 100vh;
  99. overflow: auto;
  100. }
  101. .report-view{
  102. padding: 16rpx;
  103. font-size: $uni-font-size-lg;
  104. /deep/.uni-data-checklist{
  105. .checklist-group .checklist-box{
  106. margin-right: 0;
  107. }
  108. }
  109. }
  110. .card-list{
  111. padding: 30rpx;
  112. background: #fff;
  113. border-radius: 16rpx;
  114. .list-item{
  115. display: flex;
  116. justify-content: space-between;
  117. align-items: center;
  118. padding: 10rpx 0;
  119. }
  120. }
  121. </style>