From 177a9f745a73a1be9b068d5028edc4367d0470b0 Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期三, 30 八月 2023 18:31:16 +0800
Subject: [PATCH] 小程序
---
minipro_standard/pages.json | 40 +
minipro_standard/pages_inspect/pages/InspectionRecords/InspectionRecords.vue | 643 +++++++++++++++++
minipro_standard/util/constData.js | 128 +++
minipro_standard/pages_inspect/pages/InspectionDetails/InspectionDetails.vue | 249 ++++++
minipro_standard/pages_adjust/pages/outboundList/outboundList.vue | 19
minipro_standard/pages_adjust/pages/warehousingDetails/warehousingDetails.vue | 330 ++++++++
minipro_standard/pages_adjust/pages/transferList/transferList.vue | 774 ++++++++++++++++++++
minipro_standard/pages/allocation/allocation.vue | 35
8 files changed, 2,207 insertions(+), 11 deletions(-)
diff --git a/minipro_standard/pages.json b/minipro_standard/pages.json
index e26d84c..1504f4e 100644
--- a/minipro_standard/pages.json
+++ b/minipro_standard/pages.json
@@ -122,6 +122,46 @@
"navigationBarTitleText": "宸ュ崟鎶ュ伐",
"enablePullDownRefresh": false
}
+ },
+ {
+ "path": "pages/transferList/transferList",
+ "style": {
+ "navigationBarTitleText": "杞簱鍒楄〃",
+ "enablePullDownRefresh": false
+ }
+ },
+ {
+ "path": "pages/warehousingDetails/warehousingDetails",
+ "style": {
+ "navigationBarTitleText": "鍏ュ簱璇︽儏",
+ "enablePullDownRefresh": false
+ }
+ },
+ {
+ "path": "pages/outboundList/outboundList",
+ "style": {
+ "navigationBarTitleText": "鍑哄簱鍗曞垪琛�",
+ "enablePullDownRefresh": false
+ }
+ }
+ ]
+ },
+ {
+ "root": "pages_inspect",
+ "pages": [
+ {
+ "path": "pages/InspectionRecords/InspectionRecords",
+ "style": {
+ "navigationBarTitleText": "妫�楠岃褰�",
+ "enablePullDownRefresh": false
+ }
+ },
+ {
+ "path": "pages/InspectionDetails/InspectionDetails",
+ "style": {
+ "navigationBarTitleText": "妫�楠岃鎯�",
+ "enablePullDownRefresh": false
+ }
}
]
}
diff --git a/minipro_standard/pages/allocation/allocation.vue b/minipro_standard/pages/allocation/allocation.vue
index 9d214a0..43022fc 100644
--- a/minipro_standard/pages/allocation/allocation.vue
+++ b/minipro_standard/pages/allocation/allocation.vue
@@ -7,21 +7,21 @@
<text>璁″垝鐢熶骇鏁伴噺锛�</text>
</view>
<view class="fp_list_item_right">
- <input type="number" v-model="form.num" placeholder="璇疯緭鍏�" />
+ <u--input placeholder="璇疯緭鍏�" :customStyle="{width: '180rpx'}" inputAlign="right" type="number" border="surround" v-model="form.num"></u--input>
</view>
</view>
- <view class="fp_list_item" @click="timeShow = true">
+ <view class="fp_list_item">
<view class="fp_list_item_left">
<text style="color: #f00;">*</text>
<text>璁″垝寮�宸ユ棩鏈燂細</text>
</view>
- <view class="fp_list_item_right">
+ <view class="fp_list_item_right" @click="timeShow = true">
<text class="black" v-if="form.startTime">{{form.startTime}}</text>
<text v-else>骞� / 鏈� / 鏃�</text>
<u-icon name="arrow-right" color="#999999"></u-icon>
</view>
</view>
- <view class="fp_list_item" @click="openSB">
+ <view class="fp_list_item" @click="show = true">
<view class="fp_list_item_left">
<text>鐢熶骇璁惧</text>
</view>
@@ -36,8 +36,8 @@
<text>鐢熶骇浜哄憳</text>
</view>
<view class="fp_list_item_right">
- <u-checkbox-group v-model="form.personnelId" direction="horizontal" v-show="personnelData.length > 0">
- <u-checkbox :name="item.id" v-for="(item, index) in personnelData" :key="index" checked-color="#4275FC">{{item.text}}</u-checkbox>
+ <u-checkbox-group v-model="form.personnelId" v-show="personnelData.length > 0">
+ <u-checkbox :name="item.id" v-for="(item, index) in personnelData" :key="index" activeColor="#4275FC">{{item.text}}</u-checkbox>
</u-checkbox-group>
<view class="wu" v-show="personnelData.length === 0">
<text>鏆傛棤鏁版嵁</text>
@@ -50,7 +50,9 @@
<button class="fp_footer_submit" @click="submit">纭</button>
</view>
<!-- 閫夋嫨鏃ユ湡 -->
- <u-calendar :show="timeShow" mode="range" @confirm="timeConfirm"></u-calendar>
+ <u-calendar :show="timeShow" @close="timeShow = false" @confirm="timeConfirm"></u-calendar>
+ <!-- 閫夋嫨璁惧 -->
+ <u-picker :show="show" :columns="columns" @confirm="confirm" @cancel="show = false" keyName="label"></u-picker>
</view>
</template>
@@ -59,22 +61,33 @@
export default {
data() {
return {
+ show: false,
+ columns: [[{ label: '璁惧涓�' }]],
form: {
- num: $route.query.num, // 鐢熶骇鏁伴噺
+ num: '', // 鐢熶骇鏁伴噺
startTime: gsdate(new Date()), // 寮�濮嬫椂闂�
equipmentId: '', // 璁惧id
equipmentName: '', // 璁惧鍚嶇О
personnelId: [] // 浜哄憳id
},
+ personnelData: [], // 浜哄憳鏁版嵁
timeShow: false
};
+ },
+ onLoad(option) {
+ this.form.num = option.num
},
methods: {
go() {
uni.navigateBack({ delta: 1 });
},
+ confirm(val) {
+ this.form.equipmentName = val.value[0].label
+ this.form.equipmentId = 1
+ this.show = false
+ },
timeConfirm(val) {
- console.log(val)
+ this.form.startTime = val[0]
this.timeShow = false
}
}
@@ -109,7 +122,7 @@
font-weight: 400;
}
}
- .fp_list_item_right v-deep {
+ .fp_list_item_right {
display: flex;
align-items: center;
.wu {
@@ -146,7 +159,7 @@
width: 180rpx;
height: 60rpx;
border-radius: 8rpx;
- border: 1rpx solid #E5E5E5;
+ border: 2rpx solid #E5E5E5;
padding: 0 30rpx;
text-align: right;
font-size: 25rpx;
diff --git a/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue b/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue
new file mode 100644
index 0000000..fba7cbb
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue
@@ -0,0 +1,19 @@
+<template>
+ <view>
+ 鍑哄簱鍗曞垪琛�
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+
+ };
+ }
+ }
+</script>
+
+<style lang="scss">
+
+</style>
diff --git a/minipro_standard/pages_adjust/pages/transferList/transferList.vue b/minipro_standard/pages_adjust/pages/transferList/transferList.vue
new file mode 100644
index 0000000..8fb249b
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/transferList/transferList.vue
@@ -0,0 +1,774 @@
+<template>
+ <view class="content">
+ <view class="content_search">
+ <Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true"
+ placeholder="鎼滅储鐗╂枡鍚嶇О/缂栫爜/宸ュ簭鍚嶇О">
+ <template v-slot:content>
+ <view class="Search_item">
+ <view class="Search_item_label">璁″垝鏃ユ湡</view>
+ <view class="Search_item_content" @click="openDate">
+ <view class="Search_item_content_a" :style="listData.startDate ? 'color: #000' : ''">
+ {{ listData.startDate ? listData.startDate : '寮�濮嬫棩鏈�'}}</view>
+ <text>-</text>
+ <view class="Search_item_content_a" :style="listData.endDate ? 'color: #000' : ''">
+ {{ listData.endDate ? listData.endDate : '缁撴潫鏃ユ湡'}}</view>
+ </view>
+ </view>
+ <view class="Search_item">
+ <view class="Search_item_label">鍗曟嵁绫诲瀷</view>
+ <view class="Search_item_content">
+ <view class="tag">
+ <view class="tag_item" :class="{'tag_active': item.isActive}" v-for="(item, i) in types"
+ :key="item.id" @click="changeTags(i)">{{item.name}}</view>
+ </view>
+ </view>
+ </view>
+ </template>
+ </Search>
+ <view class="content_search_x"></view>
+ <LabelSelection :TagList="tagList" :isShow="true" @change="clickTag" />
+ </view>
+ <view class="content_total" :style="{top: top}">鍏眥{listData.total}}鏉℃暟鎹�</view>
+ <view class="content_list">
+ <scroll-view @scrolltolower="getLists" scroll-y :style="{height: height}">
+ <view class="content_list_item" v-for="(item, i) in lists" :key="i" @click="jump(item)">
+ <!-- item澶撮儴瑙嗗浘 -->
+ <view class="content_list_item_top">
+ <view class="content_list_item_top_left">
+ <!-- <text>杞簱鍗曞彿锛�</text>-->
+ <text>{{ item.code }}</text>
+ </view>
+ <view class="content_list_item_top_right">
+ <text class="created" v-if="item.status === 0">寰呭嚭搴�</text>
+ <text class="warning" v-else-if="item.status === 1">宸插嚭搴�</text>
+ <text class="green" v-else-if="item.status === 2">宸插叆搴�</text>
+ <text class="info" v-else-if="item.status === 3">宸插彇娑�</text>
+ <text class="info" v-else-if="item.status === 4">宸查��鍥�</text>
+ </view>
+ </view>
+ <!-- item涓婚淇℃伅閮ㄥ垎 -->
+ <view class="content_list_item_content">
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ tyepToStr(item.type) }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">杞嚭浠撳簱锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.outWarehouseName }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">杞嚭浠撶鍛橈細</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.outUserName }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">杞叆浠撳簱锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.inWarehouseName }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">杞叆浠撶鍛橈細</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.inUserName }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">璁″垝杞嚭鏃ユ湡锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.outPlandate }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">璁″垝杞叆鏃ユ湡锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ item.inPlandate }}
+ </view>
+ </view>
+ </view>
+ </view>
+ </scroll-view>
+ </view>
+ <!-- 閫夋嫨鏃ユ湡 -->
+ <u-calendar :show="timeShow" @close="timeShow = false" @confirm="timeConfirm"></u-calendar>
+ </view>
+</template>
+
+<script>
+ import Search from '@/components/Search.vue'
+ import LabelSelection from '@/components/LabelSelection.vue'
+ export default {
+ components: {
+ Search,
+ LabelSelection
+ },
+ data() {
+ return {
+ height: '',
+ top: '',
+ listData: {
+ capacity: 10,
+ page: 0,
+ total: 0,
+ startDate: '',
+ endDate: '',
+ procedureIds: [],
+ departIds: '',
+ mixParam: '',
+ cateIds: []
+ },
+ types: [
+ // { name: '鍏ㄩ儴', id: '', isActive: false },
+ // { name: '杞﹂棿棰嗘枡', id: '1', isActive: false },
+ // { name: '杞﹂棿澶囨枡', id: '2', isActive: false },
+ // { name: '鍏朵粬', id: '3', isActive: false },
+ {
+ name: '杞﹂棿棰嗘枡',
+ id: '1',
+ isActive: false
+ },
+ {
+ name: '璁″垝棰嗘枡',
+ id: '2',
+ isActive: false
+ },
+ {
+ name: '鏈哄彴澶囨枡',
+ id: '3',
+ isActive: false
+ },
+ {
+ name: '瀹屽伐鍏ュ簱',
+ id: '4',
+ isActive: false
+ },
+ {
+ name: '杞﹂棿杞簱',
+ id: '5',
+ isActive: false
+ },
+ {
+ name: '澶栧崗棰嗘枡杞簱',
+ id: '6',
+ isActive: false
+ },
+ {
+ name: '澶栧崗瀹屽伐杞簱',
+ id: '7',
+ isActive: false
+ },
+ {
+ name: '浜у搧鍏ュ簱',
+ id: '8',
+ isActive: false
+ },
+ {
+ name: '浜у搧杞簱',
+ id: '9',
+ isActive: false
+ },
+ {
+ name: '璁╂鏀捐鍏ュ簱',
+ id: '10',
+ isActive: false
+ },
+ {
+ name: '璁╂鏀捐杞簱',
+ id: '11',
+ isActive: false
+ },
+ {
+ name: '瀹㈣繑杩斾慨棰嗘枡',
+ id: '12',
+ isActive: false
+ },
+ {
+ name: '瀹㈣繑杩斾慨鍏ュ簱',
+ id: '13',
+ isActive: false
+ },
+ {
+ name: '璺ㄧ粍缁囪浆搴�',
+ id: '14',
+ isActive: false
+ },
+ {
+ name: '宸ュ簭鎶ュ簾',
+ id: '15',
+ isActive: false
+ },
+ {
+ name: '瀹㈤��杩斾慨棰嗘枡',
+ id: '16',
+ isActive: false
+ },
+ {
+ name: '瀹㈤��杩斾慨鍏ュ簱',
+ id: '17',
+ isActive: false
+ },
+ {
+ name: '搴熷搧鍏ュ簱',
+ id: '30',
+ isActive: false
+ }
+ ],
+ orderType: [
+ { name: '杞﹂棿棰嗘枡', id: 1 },
+ { name: '璁″垝棰嗘枡', id: 2 },
+ { name: '鏈哄彴澶囨枡', id: 3 },
+ { name: '瀹屽伐鍏ュ簱', id: 4 },
+ { name: '杞﹂棿杞簱', id: 5 },
+ { name: '澶栧崗棰嗘枡杞簱', id: 6 },
+ { name: '澶栧崗瀹屽伐杞簱', id: 7 },
+ { name: '浜у搧鍏ュ簱', id: 8 },
+ { name: '浜у搧杞簱', id: 9 },
+ { name: '璁╂鏀捐鍏ュ簱', id: 10 },
+ { name: '璁╂鏀捐杞簱', id: 11 },
+ { name: '瀹㈣繑杩斾慨棰嗘枡', id: 12 },
+ { name: '瀹㈣繑杩斾慨鍏ュ簱', id: 13 },
+ { name: '璺ㄧ粍缁囪浆搴�', id: 14 },
+ { name: '宸ュ簭鎶ュ簾', id: 15 },
+ { name: '瀹㈤��杩斾慨棰嗘枡', id: 16 },
+ { name: '瀹㈤��杩斾慨鍏ュ簱', id: 17 },
+ { name: '搴熷搧鍏ュ簱', id: 30 }
+ ],
+ tagList: [{
+ id: "",
+ name: "鍏ㄩ儴",
+ num: "10",
+ },
+ {
+ id: "0",
+ name: "宸茶鍒�",
+ num: "132",
+ },
+ {
+ id: "1",
+ name: "宸茶浆鍑�",
+ num: "3",
+ },
+ {
+ id: "2",
+ name: "宸茶浆鍏�",
+ num: "12",
+ },
+ {
+ id: "3",
+ name: "宸插彇娑�",
+ num: "12",
+ }
+ ],
+ data: [], // 宸ュ簭鏁版嵁
+ factoryList: [],
+ finished: true,
+ loading: false,
+ refreshing: false,
+ timeShow: false,
+ lists: [{
+ id: 1,
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 2,
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 3,
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 4,
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 5,
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ }
+ ]
+ };
+ },
+ onReady() {
+ var that = this
+ this.$nextTick(() => {
+ uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => {
+ that.height = `calc(100vh - ${rect.height + 80}px)`
+ that.top = `${rect.height}px`
+ }).exec()
+ })
+ },
+ methods: {
+ tyepToStr(type) {
+ // <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+ for (const item of this.orderType) {
+ if (item.id == type) {
+ return item.name
+ }
+ }
+ return '-'
+ },
+ // 璺宠浆
+ jump(item) {
+ uni.navigateTo({
+ url: `/pages/planDetails/planDetails?id=${item.id}`
+ })
+ },
+ // 鑾峰彇澶撮儴缁勪欢楂樺害
+ getHeight(height) {
+ this.height = height
+ },
+ // 閲嶇疆
+ reset() {
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ this.listData.mixParam = ''
+ this.listData.startDate = ''
+ this.listData.endDate = ''
+ this.listData.procedureIds = []
+ if (this.factoryList.length > 0) {
+ this.listData.departIds = this.factoryList[0].id
+ }
+ if (this.data.length > 0) {
+ this.data.forEach(item => {
+ item.isActive = false
+ })
+ }
+ // this.getLists()
+ // this.pageCounts()
+ },
+ // 鏃ユ湡纭畾
+ timeConfirm(val) {
+ this.listData.startDate = val[0]
+ this.listData.endDate = val[val.length - 1]
+ this.timeShow = false
+ },
+ // 鍒囨崲宸ュ巶
+ changeTags(i, id) {
+ this.listData.departIds = id
+ this.getWorkingProcedures(id)
+ this.factoryList.forEach((item, index) => {
+ if (index === i) {
+ item.isActive = true
+ } else {
+ item.isActive = false
+ }
+ })
+ },
+ // 鎵撳紑鏃ユ湡鎻掍欢
+ openDate() {
+ this.timeShow = true
+ },
+ // 鎼滅储
+ searchInput(val) {
+ this.listData.mixParam = val
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ this.getLists()
+ },
+ // 鐐瑰嚮鏍囩鎼滅储
+ clickTag(ids) {
+ this.listData.cateIds = ids
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ // this.getLists()
+ },
+ // 鑾峰彇鍒楄〃缁熻
+ pageCounts() {
+ pageCount({
+ factoryId: this.listData.departIds,
+ procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+ startDate: this.listData.startDate,
+ endDate: this.listData.endDate,
+ statusList: this.listData.cateIds
+ }).then(res => {
+ if (res.code === 200 && res.data) {
+ this.tagList[0].num = res.data.allNum.toString()
+ this.tagList[1].num = res.data.startNum.toString()
+ this.tagList[2].num = res.data.ingNum.toString()
+ this.tagList[3].num = res.data.endNum.toString()
+ }
+ })
+ },
+ // 鑾峰彇宸ュ巶鏁版嵁
+ getOrganizations() {
+ getOrganization({
+ type: 1
+ }).then(res => {
+ if (res.code === 200 && res.data && res.data.length !== 0) {
+ res.data.forEach((item, i) => {
+ item.isActive = i === 0;
+ })
+ if (res.data.length > 0) {
+ this.factoryList = res.data
+ this.listData.departIds = this.factoryList[0].id
+ this.listData.procedureIds = ''
+ this.finished = false
+ this.getWorkingProcedures(this.factoryList[0].id)
+ this.getLists()
+ this.pageCounts()
+ }
+ }
+ })
+ },
+ // 鑾峰彇宸ュ簭鏁版嵁
+ getWorkingProcedures(orgId) {
+ this.data = []
+ getWorkingProcedure({
+ orgId
+ })
+ .then(res => {
+ if (res.code === 200 && res.data && res.data.length !== 0) {
+ res.data.forEach((item, i) => {
+ item.isActive = false;
+ })
+ this.data = res.data
+ }
+ })
+ },
+ // 鎼滅储寮规鎻愪氦
+ submit() {
+ let pmodelOrgId = []
+ this.data.forEach((item) => {
+ if (item.isActive) {
+ pmodelOrgId.push(item.id)
+ }
+ })
+ this.listData.procedureIds = pmodelOrgId
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ // this.getLists()
+ // this.pageCounts()
+ },
+ // 鑾峰彇璁″垝鍒楄〃鏁版嵁
+ getLists() {
+ console.log('getLists')
+ if (!this.finished) {
+ this.loading = true
+ this.listData.page = this.listData.page++
+ getList({
+ capacity: this.listData.capacity,
+ model: {
+ mixParam: this.listData.mixParam,
+ startDate: this.listData.startDate,
+ endDate: this.listData.endDate,
+ procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+ factoryId: this.listData.departIds,
+ statusList: this.listData.cateIds
+ },
+ page: this.listData.page,
+ sorts: [{
+ direction: 'ASC',
+ property: 'publishDate'
+ }]
+ }).then(res => {
+ this.loading = false
+ this.listData.total = res.data.total
+ if (this.refreshing) {
+ this.lists = []
+ this.refreshing = false;
+ }
+ if (res.code === 200 && res.data.records.length !== 0) {
+ if (this.lists.length === 0) {
+ this.lists = res.data.records
+ } else {
+ this.lists.push(...res.data.records)
+ }
+ } else {
+ this.finished = true
+ }
+ }).catch(err => {
+ this.loading = false
+ this.finished = true
+ if (this.refreshing) {
+ this.lists = []
+ this.refreshing = false;
+ }
+ })
+ }
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .content {
+ .content_search {
+ width: 100%;
+ padding: 30rpx;
+ background: white;
+ position: sticky;
+ top: 0;
+ z-index: 999;
+ box-sizing: border-box;
+
+ .Search_item {
+ margin-bottom: 40rpx;
+
+ .Search_item_label {
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #222222;
+ }
+
+ .Search_item_content {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-top: 30rpx;
+
+ .tag {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+
+ .tag_active {
+ background: $nav-color !important;
+ color: #ffffff !important;
+ }
+
+ .tag_item {
+ padding: 22rpx 26rpx;
+ box-sizing: border-box;
+ background: #F2F2F2;
+ border-radius: 8rpx;
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #333333;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-right: 22rpx;
+ margin-bottom: 22rpx;
+ }
+ }
+
+ text {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #333333;
+ margin: 0 30rpx;
+ }
+
+ .Search_item_content_a {
+ padding: 20rpx 0;
+ flex: 1;
+ background: #F7F7F7;
+ border-radius: 8rpx;
+ border: 1rpx solid #EEEEEE;
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #B2B2B2;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+ }
+ }
+
+ .content_search_x {
+ height: 24rpx;
+ }
+ }
+
+ .content_list {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+
+ .content_list_item {
+ width: 100%;
+ box-sizing: border-box;
+ padding: 30rpx;
+ display: flex;
+ flex-direction: column;
+ border-bottom: 1rpx solid #ececec;
+ background: white;
+
+ .content_list_item_top {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+
+ .content_list_item_top_left {
+ display: flex;
+ align-items: center;
+
+ text {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ }
+ }
+
+ .content_list_item_top_right {
+ font-size: 26rpx;
+ font-weight: 400;
+
+ .created {
+ color: $nav-stateColor1 !important;
+ }
+
+ .warning {
+ color: $nav-stateColor5 !important;
+ }
+
+ .green {
+ color: $nav-stateColor6 !important;
+ }
+
+ .info {
+ color: $nav-stateColor3 !important;
+ }
+ }
+ }
+
+ .content_list_item_content {
+ padding: 24rpx 30rpx;
+ background: #f7f7f7;
+ border-radius: 16rpx;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ margin-top: 32rpx;
+
+ .content_list_item_content_item {
+ width: 100%;
+ display: flex;
+ margin-top: 24rpx;
+
+ &:first-child {
+ margin-top: 0;
+ }
+
+ // &:nth-child(1) {
+ // margin-top: 0 !important;
+ // }
+ // &:nth-child(2) {
+ // margin-top: 0 !important;
+ // }
+ .content_list_item_content_item_label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+
+ .content_list_item_content_item_nr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ margin-right: 10rpx;
+ }
+ }
+ }
+ }
+ }
+
+ .content_total {
+ width: 100%;
+ height: 80rpx;
+ padding: 24rpx 30rpx;
+ background: #F7F7F7;
+ font-size: 24rpx;
+ font-weight: 400;
+ box-sizing: border-box;
+ color: #666666;
+ position: sticky;
+ z-index: 99;
+ }
+ }
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/pages/warehousingDetails/warehousingDetails.vue b/minipro_standard/pages_adjust/pages/warehousingDetails/warehousingDetails.vue
new file mode 100644
index 0000000..95f001b
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/warehousingDetails/warehousingDetails.vue
@@ -0,0 +1,330 @@
+<template>
+ <view class="content">
+ <view class="order-message">
+ <view class="content_list_item_top">
+ <view class="content_list_item_top_left">
+ <!--<text>鍏ュ簱鍗曞彿锛�</text>-->
+ <text>{{ data.code }}</text>
+ </view>
+ <view class="content_list_item_top_right">
+ <text class="warning" v-if="data.status === 0">寰呭叆搴�</text>
+ <text class="green" v-else-if="data.status === 1">宸插叆搴�</text>
+ <text class="info" v-else-if="data.status === 2">宸插彇娑�</text>
+ </view>
+ </view>
+ <view class="content_list_item_content">
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ orderTyepToStr(data.billType) }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鍏ヨ揣浠撳簱锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ data.warehouseCode + ' | ' + data.warehouseName }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">璁″垝鏃ユ湡锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ data.planDate }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鏉ユ簮绫诲瀷锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ tyepToStr(data.originType) }}
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鏉ユ簮鍗曞彿锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ data.originCode ? data.originCode : '-' }}
+ </view>
+ </view>
+ <view v-if="data.updateName" class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鎿嶄綔浜猴細</view>
+ <view class="content_list_item_content_item_nr">
+ {{ data.updateName + ' - ' + data.updateMobile }}
+ </view>
+ </view>
+ <view v-if="data.updateTime" class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">鎿嶄綔鏃堕棿锛�</view>
+ <view class="content_list_item_content_item_nr">
+ {{ data.updateTime }}
+ </view>
+ </view>
+ </view>
+ </view>
+ <!-- 杞簱鐗╂枡 -->
+ <view class="title">
+ <text class="title-prefix"></text>
+ <text>{{ data.status==1 ? '宸插叆搴撶墿鏂�' : '寰呭叆搴撶墿鏂�' }}</text>
+ </view>
+ <view class="material-content">
+ <view class="item-style" v-for="(item, index) in materailArray" :key="index">
+ <view class="item-title-style">
+ <text style="font-weight: 500;">{{ item.materialName + ' | ' + item.materialCode}}</text>
+ </view>
+ <view class="item-content-style">
+ <view class="content_list_item_content_item">
+ <text class="content_list_item_content_item_label">鎵规鍙凤細</text>
+ <text class="content_list_item_content_item_nr">{{ item.batch || '-' }}</text>
+ </view>
+ <view class="content_list_item_content_item">
+ <text class="content_list_item_content_item_label">鏁伴噺锛�</text>
+ <text class="content_list_item_content_item_nr">{{ item.doneNum + item.unitName }}</text>
+ </view>
+ <view class="content_list_item_content_item">
+ <text class="content_list_item_content_item_label">宸ュ簭锛�</text>
+ <text class="content_list_item_content_item_nr">{{ item.procedureName || '-' }}</text>
+ </view>
+ <view class="content_list_item_content_item">
+ <view class="content_list_item_content_item_label">璐ㄩ噺锛�</view>
+ <view class="content_list_item_content_item_nr">
+ <text v-if="item.qualityType == 0" class="green">鍚堟牸</text>
+ <text v-else-if="item.qualityType == 1" class="yellow">涓嶈壇</text>
+ <text v-else-if="item.qualityType == 2" class="red">鎶ュ簾</text>
+ <text v-else>-</text>
+ </view>
+ </view>
+ <view class="content_list_item_content_item">
+ <text class="content_list_item_content_item_label">鍏ュ簱璐т綅锛�</text>
+ <text
+ class="content_list_item_content_item_nr">{{ item.locationName ? item.locationName : '-' }}</text>
+ </view>
+ </view>
+ </view>
+ </view>
+ <view v-if="data.status === 0" style="height:94rpx"></view>
+ <view v-if="data.status === 0" class="bottom-button">
+ <button class="button button-cancel" @click="submit">鍘诲叆搴�</button>
+ <!-- <button class="button button-cancel" @click="cancel">鍙栨秷</button> -->
+ </view>
+ </view>
+</template>
+
+<script>
+ import { orderTyepToStr } from '@/util/constData.js'
+ export default {
+ data() {
+ return {
+ types: [
+ { name: '鍏ㄩ儴', id: '', isActive: true },
+ { name: '閲囪喘璁㈠崟', id: '0', isActive: false },
+ { name: '鐢熶骇宸ュ崟', id: '1', isActive: false },
+ { name: '閿�鍞鍗�', id: '2', isActive: false },
+ { name: '杞簱鍗�', id: '3', isActive: false },
+ { name: '鐩樼偣鍗�', id: '4', isActive: false },
+ ],
+ data: {}
+ };
+ },
+ methods: {
+ tyepToStr(type) {
+ // <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+ for (const item of this.types) {
+ if (parseInt(item.id) === this.type) {
+ return item.name
+ }
+ }
+ return '-'
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .content {
+ background: white;
+
+ .order-message {
+ padding: 30rpx;
+ display: flex;
+ flex-direction: column;
+
+ // border-bottom: 1rpx solid #ececec;
+ .content_list_item_top {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+
+ .content_list_item_top_left {
+ display: flex;
+
+ // align-items: center;
+ text {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ }
+ }
+
+ .content_list_item_top_right {
+ font-size: 26rpx;
+ font-weight: 400;
+
+ .created {
+ color: $nav-stateColor1 !important;
+ }
+
+ .warning {
+ color: $nav-stateColor5 !important;
+ }
+
+ .green {
+ color: $nav-stateColor6 !important;
+ }
+
+ .info {
+ color: $nav-stateColor3 !important;
+ }
+ }
+ }
+
+ .content_list_item_content {
+ padding: 24rpx 30rpx;
+ background: #f7f7f7;
+ border-radius: 16rpx;
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ margin-top: 32rpx;
+
+ .content_list_item_content_item:first-child {
+ margin-top: 0;
+ }
+
+ .content_list_item_content_item {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-top: 24rpx;
+
+ .content_list_item_content_item_label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+
+ .content_list_item_content_item_nr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ margin-right: 10rpx;
+ }
+ }
+ }
+ }
+
+ .title {
+ background-color: #f7f7f7;
+ padding: 30rpx;
+ font-size: 30rpx;
+ display: flex;
+ align-items: center;
+
+ .title-prefix {
+ display: inline-block;
+ background-color: #4275FC;
+ height: 30rpx;
+ width: 8rpx;
+ border-radius: 1rpx;
+ margin-right: 12rpx;
+ }
+ }
+
+ .material-content {
+ padding: 30rpx;
+
+ .item-style {
+ width: initial;
+ border-bottom: 1rpx solid #ececec;
+ margin-top: 30rpx;
+
+ &:first-child {
+ margin-top: 0 !important;
+ }
+
+ &:last-child {
+ border: none;
+ }
+
+ .item-title-style {
+ margin-bottom: 12rpx;
+ font-size: 30rpx;
+ }
+
+ .item-content-style {
+ // padding: 24rpx 30rpx;
+ // background-color: #f7f7f7;
+ // border-radius: 16rpx;
+ display: flex;
+ flex-wrap: wrap;
+ padding-bottom: 30rpx;
+ justify-content: space-between;
+
+ &:last-child {
+ padding-bottom: 0;
+ }
+
+ .content_list_item_content_item {
+ width: 100%;
+ display: flex;
+ margin-top: 24rpx;
+
+ .content_list_item_content_item_label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+
+ .content_list_item_content_item_nr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ margin-right: 10rpx;
+ }
+ }
+ }
+ }
+ }
+
+ .bottom-button {
+ padding: 1rpx;
+ background-color: #f7f7f7;
+ position: fixed;
+ width: 100%;
+ bottom: 0;
+ height: 188rpx;
+ display: flex;
+ justify-content: space-between;
+
+ .button-action {
+ background: #fff;
+ color: $nav-color;
+ }
+
+ .button-cancel {
+ background: $nav-color;
+ color: #FFFFFF;
+ }
+
+ .button {
+ margin: 32rpx 32rpx 68rpx 32rpx;
+ height: 88rpx;
+ /*width: 668rpx;*/
+ // width: 334rpx;
+ border: none;
+ border-radius: 8rpx;
+ box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+ }
+ }
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_inspect/pages/InspectionDetails/InspectionDetails.vue b/minipro_standard/pages_inspect/pages/InspectionDetails/InspectionDetails.vue
new file mode 100644
index 0000000..4518724
--- /dev/null
+++ b/minipro_standard/pages_inspect/pages/InspectionDetails/InspectionDetails.vue
@@ -0,0 +1,249 @@
+<template>
+ <view class="page">
+ <view class="page_info">
+ <view class="page_info_title">{{info.code}}</view>
+ <view class="page_info_nr">
+ <view class="item">
+ <view class="item_label">鐗╂枡淇℃伅锛�</view>
+ <view class="item_nr" v-if="info.mmodel">{{info.mmodel.name}}涓▄{info.mmodel.code}}</view>
+ </view>
+ <view class="items" style="margin-top: 0">
+ <view class="item_label">鐢熶骇鏁伴噺锛�</view>
+ <view class="item_nr" v-if="info.umodel">{{info.num}}{{info.umodel.name}}</view>
+ </view>
+ <view class="item">
+ <view class="item_label">鐢熶骇鎵规锛�</view>
+ <view class="item_nr">{{info.batch}}</view>
+ </view>
+ <view class="items">
+ <view class="item_label">鐢熶骇宸ュ簭锛�</view>
+ <view class="item_nr" v-if="info.pmodel">{{info.pmodel.name}}</view>
+ </view>
+ <view class="item">
+ <view class="item_label">宸ュ崟缂栧彿锛�</view>
+ <view class="item_nr">{{info.workorderCode}}</view>
+ </view>
+<!-- <view class="items">-->
+<!-- <view class="item_label">鐢熶骇浜哄憳锛�</view>-->
+<!-- <view class="item_nr">{{info.proUserids}}</view>-->
+<!-- </view>-->
+ <view class="items">
+ <view class="item_label">鐢熶骇璁惧锛�</view>
+ <view class="item_nr" v-if="info.devmodel">{{info.devmodel.name}}</view>
+ </view>
+ <!-- <view class="items">
+ <view class="item_label">宸ヨ鐮侊細</view>
+ <view class="item_nr" v-if="info.amodel">{{info.amodel.code}}</view>
+ </view> -->
+ </view>
+ </view>
+ <view class="page_title">妫�楠屼俊鎭�</view>
+ <view class="page_info1">
+ <view class="page_info1_item" style="margin: 0;">
+ <view class="label">妫�楠屼汉鍛橈細</view>
+ <view class="nr">{{info.smodelRealName}}/{{info.checkUserDepartName}}</view>
+ </view>
+ <view class="page_info1_items">
+ <view class="label">妫�楠屾棩鏈燂細</view>
+ <view class="nr">{{info.checkDate}}</view>
+ </view>
+ <view class="page_info1_item">
+ <view class="label">鍚堟牸鏁伴噺锛�</view>
+ <view class="nr" v-if="info.umodel">{{info.qualifiedNum}}{{info.umodel.name}}</view>
+ </view>
+ <view class="page_info1_items">
+ <view class="label">涓嶈壇鏁伴噺锛�</view>
+ <view class="nr" v-if="info.umodel">{{info.unqualifiedNum}}{{info.umodel.name}}</view>
+ </view>
+ </view>
+ <view class="page_err" v-if="info.checkInfo">
+ <!-- <view class="page_err_item">
+ <text>宸ヨ {{info.qualifiedApplianceCode}}</text>
+ <text v-if="info.umodel">{{info.unqualifiedNum}}{{info.umodel.name}}</text>
+ </view> -->
+ <view class="page_err_items">
+ <text>涓嶈壇鍘熷洜锛�</text>
+ <text>{{info.checkInfo}}</text>
+ </view>
+ </view>
+ <view class="page_footer" v-if="info.createUser === $store.state.userInfo.id && info.workorderstatus !== 4 && info.workorderstatus !== 2">
+ <view class="page_footer_dele red" @click="dele">鍒犻櫎</view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ info: {}
+ };
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+.page {
+ width: 100%;
+ height: 100%;
+ position: absolute;
+ background: #F7F7F7;
+ .page_info {
+ padding: 30rpx;
+ background: #ffffff;
+ .page_info_title {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ }
+ .page_info_nr {
+ padding: 0 30rpx 30rpx 30rpx;
+ margin-top: 30rpx;
+ background: #F7F7F7;
+ border-radius: 16rpx;
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+ .items {
+ width: 45%;
+ display: flex;
+ margin-top: 24rpx;
+ .item_label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ .item_nr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ .item {
+ width: 55%;
+ display: flex;
+ margin-top: 24rpx;
+ .item_label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ .item_nr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ }
+ }
+ .page_title {
+ padding: 40rpx 30rpx 30rpx 30rpx;
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #222222;
+ }
+ .page_info1 {
+ padding: 0 30rpx 30rpx 30rpx;
+ background: #ffffff;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ margin-bottom: 24rpx;
+ .page_info1_items {
+ display: flex;
+ width: 45%;
+ margin-top: 30rpx;
+ .label {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ .nr {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ .page_info1_item {
+ display: flex;
+ width: 55%;
+ margin-top: 30rpx;
+ .label {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ .nr {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ }
+ .page_err {
+ padding: 0 30rpx 30rpx 30rpx;
+ background: #ffffff;
+ .page_err_item {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ padding-top: 30rpx;
+ text {
+ &:nth-child(1) {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #DE5243;
+ }
+ &:nth-child(2) {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #DE5243;
+ }
+ }
+ }
+ .page_err_items {
+ display: flex;
+ justify-content: space-between;
+ padding-top: 30rpx;
+ text {
+ &:nth-child(1) {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ &:nth-child(2) {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ }
+ }
+ .page_footer {
+ position: fixed;
+ bottom: 0;
+ width: 100%;
+ padding-bottom: 68rpx;
+ padding-left: 30rpx;
+ padding-right: 30rpx;
+ box-sizing: border-box;
+ .page_footer_dele {
+ width: 100%;
+ height: 88rpx;
+ background: white;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 30rpx;
+ border-radius: 8rpx;
+ box-shadow: 0 0 12rpx 0 rgba(0,0,0,0.08);
+ }
+ }
+}
+</style>
diff --git a/minipro_standard/pages_inspect/pages/InspectionRecords/InspectionRecords.vue b/minipro_standard/pages_inspect/pages/InspectionRecords/InspectionRecords.vue
new file mode 100644
index 0000000..a2dbb0c
--- /dev/null
+++ b/minipro_standard/pages_inspect/pages/InspectionRecords/InspectionRecords.vue
@@ -0,0 +1,643 @@
+<template>
+ <view class="content">
+ <view class="content_search">
+ <Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true" placeholder="鎼滅储宸ュ崟缂栫爜/鐗╂枡缂栫爜2">
+ <template v-slot:content>
+ <view class="Search_item">
+ <view class="Search_item_label">妫�楠屾棩鏈�</view>
+ <view class="Search_item_content" @click="timeShow = true">
+ <view class="Search_item_content_a" :style="pageData.checkStartDate ? 'color: #000;' : ''">{{ pageData.checkStartDate ? pageData.checkStartDate : '寮�濮嬫棩鏈�'}}</view>
+ <text>-</text>
+ <view class="Search_item_content_a" :style="pageData.checkEndDate ? 'color: #000;' : ''">{{ pageData.checkEndDate ? pageData.checkEndDate : '缁撴潫鏃ユ湡'}}</view>
+ </view>
+ </view>
+ <view class="Search_item">
+ <view class="Search_item_label">妫�楠岀被鍨�</view>
+ <view class="Search_item_content">
+ <view class="tag">
+ <view class="tag_item" :class="{'tag_active': item.isActive}" v-for="(item, i) in data" :key="item.id" @click="changeTag(i)">{{item.name}}</view>
+ </view>
+ </view>
+ </view>
+ <view class="Search_item">
+ <view class="Search_item_label">妫�楠屽伐搴�</view>
+ <view class="Search_item_content">
+ <view class="tag">
+ <view class="tag_item" :class="{'tag_active': item.isActive}" v-for="(item, i) in workingProcedure" :key="item.id" @click="changeTag1(i)">{{item.name}}</view>
+ </view>
+ </view>
+ </view>
+ <view class="Search_item">
+ <view class="Search_item_label">鎵规鍙�</view>
+ <view class="Search_item_content">
+ <u--input placeholder="璇疯緭鍏ユ壒娆″彿" border="surround" v-model="pageData.batch"></u--input>
+ </view>
+ </view>
+ </template>
+ </Search>
+ </view>
+ <view class="content_total" :style="{top: top}">鍏眥{listData.total}}鏉℃暟鎹�</view>
+ <view class="content_list">
+ <scroll-view @scrolltolower="getLists" scroll-y :style="{height: height}">
+ <view class="content_list_item" v-for="item in lists" :key="item.id" @click="jump(item)">
+ <view class="content_list_item_title">
+ <text>{{item.code}}</text>
+ <text class="warning" v-if="item.checkType === 0">宸$嚎</text>
+ <text v-if="item.checkType === 1">宸℃</text>
+ <text class="green" v-if="item.checkType === 2">瀹屽伐妫�</text>
+ </view>
+ <view class="content_list_item_nr">
+ <view class="content_list_item_nr_box">
+ <view class="label">鐗╂枡淇℃伅锛�</view>
+ <view class="cr" v-if="item.mmodel">{{item.mmodel.name}}涓▄{item.mmodel.code}}</view>
+ </view>
+ <view class="content_list_item_nr_boxs">
+ <view class="label">鐢熶骇鏁伴噺锛�</view>
+ <view class="cr" v-if="item.umodel">{{item.num}}{{item.umodel.name}}</view>
+ </view>
+ <view class="content_list_item_nr_box">
+ <view class="label">鐢熶骇鎵规锛�</view>
+ <view class="cr">{{item.batch}}</view>
+ </view>
+ <view class="content_list_item_nr_boxs">
+ <view class="label">鐢熶骇宸ュ簭锛�</view>
+ <view class="cr" v-if="item.pmodel">{{item.pmodel.name}}</view>
+ </view>
+ <view class="content_list_item_nr_box">
+ <view class="label">宸ュ崟缂栧彿锛�</view>
+ <view class="cr">{{item.workorderCode}}</view>
+ </view>
+ <view class="content_list_item_nr_boxs">
+ <view class="label">妫�楠屼汉鍛橈細</view>
+ <view class="cr">{{item.smodelRealName}}/{{item.checkUserDepartName}}</view>
+ </view>
+ <!-- <view class="content_list_item_nr_box">
+ <view class="label">妫�楠屾棩鏈燂細</view>
+ <view class="cr">{{item.checkDate}}</view>
+ </view> -->
+ <!-- <view class="content_list_item_nr_boxs">
+ <view class="label">宸ヨ鐮侊細</view>
+ <view class="cr" v-if="item.amodel">{{item.amodel.code}}</view>
+ </view> -->
+ <view class="content_list_item_nr_box">
+ <view class="label">鍚堟牸鏁伴噺锛�</view>
+ <view class="cr" v-if="item.umodel">{{item.qualifiedNum}}{{item.umodel.name}}</view>
+ </view>
+ <view class="content_list_item_nr_boxs">
+ <view class="label">涓嶈壇鏁伴噺锛�</view>
+ <view class="cr warning" v-if="item.umodel">{{item.unqualifiedNum}}{{item.umodel.name}}</view>
+ </view>
+ </view>
+ </view>
+ </scroll-view>
+ </view>
+ <!-- 閫夋嫨鏃ユ湡 -->
+ <u-calendar :show="timeShow" mode="range" @confirm="timeConfirm"></u-calendar>
+ </view>
+</template>
+
+<script>
+ import Search from '@/components/Search.vue'
+ export default {
+ components: { Search },
+ data() {
+ return {
+ height: '',
+ top: '',
+ listData: {
+ capacity: 10,
+ page: 0,
+ total: 0,
+ startDate: '',
+ endDate: '',
+ procedureIds: [],
+ departIds: '',
+ mixParam: '',
+ cateIds: []
+ },
+ data: [ // 妫�楠岀被鍨�
+ { id: '0', name: '宸$嚎', isActive: false },
+ { id: '1', name: '宸℃', isActive: false },
+ { id: '2', name: '瀹屽伐妫�', isActive: false }
+ ],
+ workingProcedure: [], // 宸ュ簭
+ finished: true,
+ loading: false,
+ refreshing: false,
+ timeShow: false,
+ lists: [
+ {
+ id: 1,
+ checkType: 0,
+ status: 0,
+ code: '1234543223',
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 2,
+ checkType: 1,
+ code: '1234543223',
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ id: 3,
+ checkType: 2,
+ code: '1234543223',
+ status: 0,
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ checkType: 2,
+ id: 4,
+ status: 0,
+ urgent: 1,
+ code: '1234543223',
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ },
+ {
+ checkType: 1,
+ id: 5,
+ status: 0,
+ code: '1234543223',
+ urgent: 1,
+ num: 100,
+ batch: '11111',
+ planDate: '2023-08-29',
+ mmodel: {
+ name: '宸ュ簭璁″垝',
+ code: 'fbdseasafghb'
+ },
+ usermodel: {
+ realname: '璁″垝浜哄憳'
+ },
+ pmodel: {
+ name: '宸ュ簭璁″垝'
+ },
+ fmodel: {
+ name: '宸ュ巶'
+ }
+ }
+ ]
+ };
+ },
+ onReady() {
+ var that = this
+ this.$nextTick(() => {
+ uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => {
+ that.height = `calc(100vh - ${rect.height + 80}px)`
+ that.top = `${rect.height}px`
+ }).exec()
+ })
+ },
+ methods: {
+ // 璺宠浆
+ jump(item) {
+ uni.navigateTo({
+ url: `/pages/InspectionDetails/InspectionDetails?id=${item.id}`
+ })
+ },
+ // 鑾峰彇澶撮儴缁勪欢楂樺害
+ getHeight(height) {
+ this.height = height
+ },
+ // 閲嶇疆
+ reset() {
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ this.listData.mixParam = ''
+ this.listData.startDate = ''
+ this.listData.endDate = ''
+ this.listData.procedureIds = []
+ if (this.factoryList.length > 0) {
+ this.listData.departIds = this.factoryList[0].id
+ }
+ if (this.data.length > 0) {
+ this.data.forEach(item => { item.isActive = false })
+ }
+ // this.getLists()
+ // this.pageCounts()
+ },
+ // 鏃ユ湡纭畾
+ timeConfirm(val) {
+ this.listData.startDate = val[0]
+ this.listData.endDate = val[val.length - 1]
+ this.timeShow = false
+ },
+ // 鍒囨崲宸ュ巶
+ changeTags(i, id) {
+ this.listData.departIds = id
+ this.getWorkingProcedures(id)
+ this.factoryList.forEach((item, index) => {
+ if (index === i) {
+ item.isActive = true
+ } else {
+ item.isActive = false
+ }
+ })
+ },
+ // 鎵撳紑鏃ユ湡鎻掍欢
+ openDate() {
+ this.timeShow = true
+ },
+ // 鎼滅储
+ searchInput(val) {
+ this.listData.mixParam = val
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ this.getLists()
+ },
+ // 鐐瑰嚮鏍囩鎼滅储
+ clickTag(ids) {
+ this.listData.cateIds = ids
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ // this.getLists()
+ },
+ // 鑾峰彇鍒楄〃缁熻
+ pageCounts() {
+ pageCount({
+ factoryId: this.listData.departIds,
+ procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+ startDate: this.listData.startDate,
+ endDate: this.listData.endDate,
+ statusList: this.listData.cateIds
+ }).then(res => {
+ if (res.code === 200 && res.data) {
+ this.tagList[0].num = res.data.allNum.toString()
+ this.tagList[1].num = res.data.startNum.toString()
+ this.tagList[2].num = res.data.ingNum.toString()
+ this.tagList[3].num = res.data.endNum.toString()
+ }
+ })
+ },
+ // 鑾峰彇宸ュ巶鏁版嵁
+ getOrganizations() {
+ getOrganization({
+ type: 1
+ }).then(res => {
+ if (res.code === 200 && res.data && res.data.length !== 0) {
+ res.data.forEach((item, i) => {
+ item.isActive = i === 0;
+ })
+ if (res.data.length > 0) {
+ this.factoryList = res.data
+ this.listData.departIds = this.factoryList[0].id
+ this.listData.procedureIds = ''
+ this.finished = false
+ this.getWorkingProcedures(this.factoryList[0].id)
+ this.getLists()
+ this.pageCounts()
+ }
+ }
+ })
+ },
+ // 鑾峰彇宸ュ簭鏁版嵁
+ getWorkingProcedures(orgId) {
+ this.data = []
+ getWorkingProcedure({ orgId })
+ .then(res => {
+ if (res.code === 200 && res.data && res.data.length !== 0) {
+ res.data.forEach((item, i) => {
+ item.isActive = false;
+ })
+ this.data = res.data
+ }
+ })
+ },
+ // 鎼滅储寮规鎻愪氦
+ submit() {
+ let pmodelOrgId = []
+ this.data.forEach((item) => {
+ if (item.isActive) {
+ pmodelOrgId.push(item.id)
+ }
+ })
+ this.listData.procedureIds = pmodelOrgId
+ this.listData.page = 0
+ this.finished = false
+ this.lists = []
+ // this.getLists()
+ // this.pageCounts()
+ },
+ // 鑾峰彇璁″垝鍒楄〃鏁版嵁
+ getLists() {
+ console.log('getLists')
+ if (!this.finished) {
+ this.loading = true
+ this.listData.page = this.listData.page++
+ getList({
+ capacity: this.listData.capacity,
+ model: {
+ mixParam: this.listData.mixParam,
+ startDate: this.listData.startDate,
+ endDate: this.listData.endDate,
+ procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+ factoryId: this.listData.departIds,
+ statusList: this.listData.cateIds
+ },
+ page: this.listData.page,
+ sorts: [
+ {
+ direction: 'ASC',
+ property: 'publishDate'
+ }
+ ]
+ }).then(res => {
+ this.loading = false
+ this.listData.total = res.data.total
+ if (this.refreshing) {
+ this.lists = []
+ this.refreshing = false;
+ }
+ if (res.code === 200 && res.data.records.length !== 0) {
+ if (this.lists.length === 0) {
+ this.lists = res.data.records
+ } else {
+ this.lists.push(...res.data.records)
+ }
+ } else {
+ this.finished = true
+ }
+ }).catch(err => {
+ this.loading = false
+ this.finished = true
+ if (this.refreshing) {
+ this.lists = []
+ this.refreshing = false;
+ }
+ })
+ }
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .content {
+ .content_search {
+ width: 100%;
+ padding: 30rpx;
+ background: white;
+ position: sticky;
+ top: 0;
+ z-index: 999;
+ box-sizing: border-box;
+ .Search_item {
+ margin-bottom: 40rpx;
+ .Search_item_label {
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #222222;
+ }
+ .Search_item_content {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-top: 30rpx;
+ input {
+ width: 100%;
+ height: 70rpx;
+ border-radius: 10rpx;
+ padding: 0 20rpx;
+ box-sizing: border-box;
+ border: 1rpx solid #939393;
+ color: black;
+ font-size: 26rpx;
+ }
+ input::-webkit-input-placeholder {
+ color: #999999;
+ font-size: 26rpx;
+ }
+ input:-moz-placeholder {
+ color: #999999;
+ font-size: 26rpx;
+ }
+ input::-moz-placeholder {
+ color: #999999;
+ font-size: 26rpx;
+ }
+ input:-ms-input-placeholder {
+ color: #999999;
+ font-size: 26rpx;
+ }
+ .tag {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ .tag_active {
+ background: $nav-color !important;
+ color: #ffffff !important;
+ }
+ .tag_item {
+ width: 156rpx;
+ height: 70rpx;
+ box-sizing: border-box;
+ background: #F2F2F2;
+ border-radius: 8rpx;
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #333333;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-right: 22rpx;
+ margin-bottom: 22rpx;
+ &:nth-child(4n) {
+ margin-right: 0;
+ }
+ }
+ }
+ text {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #333333;
+ }
+ .Search_item_content_a {
+ width: 308rpx;
+ height: 70rpx;
+ background: #F7F7F7;
+ border-radius: 8rpx;
+ border: 1rpx solid #EEEEEE;
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #B2B2B2;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+ }
+ }
+ .content_search_x {
+ height: 24rpx;
+ }
+ }
+ .content_list {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ .content_list_item {
+ width: 100%;
+ box-sizing: border-box;
+ padding: 30rpx;
+ background: #ffffff;
+ margin-bottom: 20rpx;
+ .content_list_item_title {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ .warning {
+ color: $nav-stateColor5 !important;
+ }
+ .green {
+ color: $nav-stateColor2 !important;
+ }
+ text {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ }
+ }
+ .content_list_item_nr {
+ padding: 24rpx 30rpx;
+ background: #F7F7F7;
+ border-radius: 16rpx;
+ margin-top: 30rpx;
+ display: flex;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ .content_list_item_nr_boxs {
+ width: 45%;
+ display: flex;
+ margin-top: 24rpx;
+ &:nth-child(1) {
+ margin-top: 0;
+ }
+ &:nth-child(2) {
+ margin-top: 0;
+ }
+ .warning {
+ color: $nav-stateColor4 !important;
+ }
+ .label {
+ flex-shrink: 0;
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ }
+ .cr {
+ flex: 1;
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ -o-text-overflow:ellipsis;
+ }
+ }
+ .content_list_item_nr_box {
+ width: 55%;
+ display: flex;
+ margin-top: 24rpx;
+ &:nth-child(1) {
+ margin-top: 0;
+ }
+ &:nth-child(2) {
+ margin-top: 0;
+ }
+ .label {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ flex-shrink: 0;
+ }
+ .cr {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ }
+ }
+ }
+ .content_total {
+ width: 100%;
+ height: 80rpx;
+ padding: 24rpx 30rpx;
+ background: #F7F7F7;
+ font-size: 24rpx;
+ font-weight: 400;
+ box-sizing: border-box;
+ color: #666666;
+ position: sticky;
+ z-index: 99;
+ }
+ }
+</style>
diff --git a/minipro_standard/util/constData.js b/minipro_standard/util/constData.js
new file mode 100644
index 0000000..ec05deb
--- /dev/null
+++ b/minipro_standard/util/constData.js
@@ -0,0 +1,128 @@
+export const orderType = [
+ {
+ name: '杞﹂棿棰嗘枡',
+ id: 1
+ },
+ {
+ name: '璁″垝棰嗘枡',
+ id: 2
+ },
+ {
+ name: '鏈哄彴澶囨枡',
+ id: 3
+ },
+ {
+ name: '瀹屽伐鍏ュ簱',
+ id: 4
+ },
+ {
+ name: '杞﹂棿杞簱',
+ id: 5
+ },
+ {
+ name: '澶栧崗棰嗘枡杞簱',
+ id: 6
+ },
+ {
+ name: '澶栧崗瀹屽伐杞簱',
+ id: 7
+ },
+ {
+ name: '浜у搧鍏ュ簱',
+ id: 8
+ },
+ {
+ name: '浜у搧杞簱',
+ id: 9
+ },
+ {
+ name: '璁╂鏀捐鍏ュ簱',
+ id: 10
+ },
+ {
+ name: '璁╂鏀捐杞簱',
+ id: 11
+ },
+ {
+ name: '瀹㈣繑杩斾慨棰嗘枡',
+ id: 12
+ },
+ {
+ name: '瀹㈣繑杩斾慨鍏ュ簱',
+ id: 13
+ },
+ {
+ name: '璺ㄧ粍缁囪浆搴�',
+ id: 14
+ },
+ {
+ name: '宸ュ簭鎶ュ簾',
+ id: 15
+ },
+ {
+ name: '瀹㈤��杩斾慨棰嗘枡',
+ id: 16
+ },
+ {
+ name: '瀹㈤��杩斾慨鍏ュ簱',
+ id: 17
+ },
+ {
+ name: '閿�鍞嚭搴�',
+ id: 18
+ },
+ {
+ name: '璁╂閿�鍞�',
+ id: 19
+ },
+ {
+ name: '宸ュ崟鎶曟枡',
+ id: 20
+ },
+ {
+ name: '浠撳簱鎶ュ簾',
+ id: 21
+ },
+ {
+ name: '瀹㈤��妫�楠岄鏂�',
+ id: 22
+ },
+ {
+ name: '瀹㈣繑妫�楠岄鏂�',
+ id: 23
+ },
+ {
+ name: '宸ュ崟浜у嚭',
+ id: 24
+ },
+ {
+ name: '閲囪喘鍏ュ簱',
+ id: 25
+ },
+ {
+ name: '瀹㈤��妫�楠屽叆搴�',
+ id: 26
+ },
+ {
+ name: '瀹㈣繑妫�楠屽叆搴�',
+ id: 27
+ },
+ {
+ name: '搴撳瓨璋冩暣',
+ id: 28
+ },
+ {
+ name: '搴熷搧鍏ュ簱',
+ id: 30
+ }
+]
+
+export const orderTyepToStr = (type) => {
+ // <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+ for (const item of orderType) {
+ if (item.id === type) {
+ return item.name
+ }
+ }
+ return '-'
+}
\ No newline at end of file
--
Gitblit v1.9.3