Forráskód Böngészése

Merge branch 'deploy' of http://git.chelingzhu.com/chelingzhu-web/storeCheck-app into deploy

lilei 4 éve
szülő
commit
81c26cb93f

+ 1 - 2
components/uni-check-list/uni-check-list.vue

@@ -77,6 +77,7 @@ export default {
 	watch: {
 	watch: {
 		listData(newValue, oldValue) {
 		listData(newValue, oldValue) {
 			this.list = newValue;
 			this.list = newValue;
+			this.hasCheck();
 		},
 		},
 		defValue(newValue) {
 		defValue(newValue) {
 			console.log(newValue)
 			console.log(newValue)
@@ -89,14 +90,12 @@ export default {
 	},
 	},
 	methods: {
 	methods: {
 		hasCheck() {
 		hasCheck() {
-			console.log(this.value)
 			this.list.map(item => {
 			this.list.map(item => {
 				let a = this.value.findIndex(k=>{
 				let a = this.value.findIndex(k=>{
 					return this.backValue == 'idArr' ? k == item.id : k.id == item.id
 					return this.backValue == 'idArr' ? k == item.id : k.id == item.id
 				})
 				})
 				item.checked = a>=0
 				item.checked = a>=0
 			})
 			})
-			this.list.splice()
 		},
 		},
 		// 选中
 		// 选中
 		chooseItem(item) {
 		chooseItem(item) {

+ 15 - 8
pages.json

@@ -250,8 +250,21 @@
 		{
 		{
 			"path": "pages/toDoList/toDoList", //  待办单 > 待办单列表
 			"path": "pages/toDoList/toDoList", //  待办单 > 待办单列表
 			"style": {
 			"style": {
-				"navigationStyle": "custom", // 隐藏系统导航栏
-				"navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
+				"navigationBarTitleText": "待办单",
+				"app-plus": {
+					"bounce": "none", //关闭窗口回弹效果
+					"titleNView": {
+						"buttons": [ //原生标题栏按钮配置,
+							{
+								"text": "\ue610 新增", //原生标题栏增加分享按钮,点击事件可通过页面的 onNavigationBarButtonTap 函数进行监听
+								"fontSize": 16,
+								"color": "#eee",
+								"width": "80px",
+								"fontSrc": "/static/iconfont/iconfont.ttf"
+							}
+						]
+					}
+				}
 			}
 			}
 		},
 		},
 		{
 		{
@@ -266,12 +279,6 @@
 				"navigationBarTitleText": "创建问题"
 				"navigationBarTitleText": "创建问题"
 			}
 			}
 		},
 		},
-		{
-			"path": "pages/toDoList/choosePutUser", //  待办单 > 选择处理人
-			"style": {
-				"navigationBarTitleText": "选择处理人"
-			}
-		},
 		{
 		{
 			"path": "pages/toDoList/chooseReceiveUser", //  待办单 > 选择抄送人
 			"path": "pages/toDoList/chooseReceiveUser", //  待办单 > 选择抄送人
 			"style": {
 			"style": {

+ 3 - 1
pages/spotCheckConfigure/evaluateStore.vue

@@ -15,7 +15,7 @@
 	checkIconPositon="right" 
 	checkIconPositon="right" 
 	:showArrow="false" 
 	:showArrow="false" 
 	:defValue="value" 
 	:defValue="value" 
-	types="checkbox" 
+	:types="type" 
 	backValue="objArr"
 	backValue="objArr"
 	@ok="chooseOk">
 	@ok="chooseOk">
 	</uni-check-list>
 	</uni-check-list>
@@ -28,6 +28,7 @@
 			return {
 			return {
 				list: [],
 				list: [],
 				value: [],
 				value: [],
+				type: ''  // 单选或多选
 			}
 			}
 		},
 		},
 		onLoad(opts) {
 		onLoad(opts) {
@@ -35,6 +36,7 @@
 			this.value.map(item=>{
 			this.value.map(item=>{
 				item.id = item.storeId
 				item.id = item.storeId
 			})
 			})
+			this.type = opts.type && opts.type || 'checkbox'
 			console.log(this.value)
 			console.log(this.value)
 			// 查询门店
 			// 查询门店
 			findStoreList({}).then(res=>{
 			findStoreList({}).then(res=>{

+ 24 - 10
pages/toDoList/addBacklog.vue

@@ -23,10 +23,6 @@
 					<u-input @click="chooseClsName" input-align="right" v-model="form.clsName" disabled placeholder="请选择考评指标" />
 					<u-input @click="chooseClsName" input-align="right" v-model="form.clsName" disabled placeholder="请选择考评指标" />
 					<u-icon name="icon-xian-11" custom-prefix="xd-icon" size="30" color="#888888"></u-icon>
 					<u-icon name="icon-xian-11" custom-prefix="xd-icon" size="30" color="#888888"></u-icon>
 				</u-form-item>
 				</u-form-item>
-				<u-form-item label="处理人" prop="putUser">
-					<u-input input-align="right" v-model="form.clsName" disabled placeholder="请选择处理人" />
-					<u-icon name="icon-xian-11" custom-prefix="xd-icon" size="30" color="#888888"></u-icon>
-				</u-form-item>
 				<u-form-item label="抄送人" prop="receiveUser"> 
 				<u-form-item label="抄送人" prop="receiveUser"> 
 					<u-input input-align="right" v-model="form.clsName" disabled placeholder="请选择抄送人" />
 					<u-input input-align="right" v-model="form.clsName" disabled placeholder="请选择抄送人" />
 					<u-icon name="icon-xian-11" custom-prefix="xd-icon" size="30" color="#888888"></u-icon>
 					<u-icon name="icon-xian-11" custom-prefix="xd-icon" size="30" color="#888888"></u-icon>
@@ -42,15 +38,23 @@
 		</view>
 		</view>
 		<u-button class="save-btn" type="primary">保存</u-button>
 		<u-button class="save-btn" type="primary">保存</u-button>
 		<!-- 时间选择器 -->
 		<!-- 时间选择器 -->
-		<mx-date-picker class="date-picker" :show="showPicker" type="date" format="yyyy-mm-dd" :value="form.effectiveEndTime" :show-tips="true" @confirm="onSelected" @cancel="showPicker=false" />
+		<w-picker
+		class="date-picker"
+			:visible.sync="showPicker" 
+			mode="date" 
+			:current="true"
+			fields="day"
+			:value="form.effectiveEndTime"
+			@confirm="onSelected($event,'date')"
+			@cancel="showPicker=false"
+			ref="date" 
+		></w-picker>
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
-	import MxDatePicker from "@/components/mx-datepicker/mx-datepicker.vue"
 	export default {
 	export default {
 		components: {
 		components: {
-			MxDatePicker
 		},
 		},
 		data() {
 		data() {
 			return {
 			return {
@@ -59,19 +63,29 @@
 				showPicker: false, // 是否显示时间弹窗
 				showPicker: false, // 是否显示时间弹窗
 				form: {
 				form: {
 					storeName: '', // 门店
 					storeName: '', // 门店
+					storeId: '', // 门店id
 					clsName: '',// 考评指标
 					clsName: '',// 考评指标
 					putUser: '', // 处理人
 					putUser: '', // 处理人
 					receiveUser: '', // 抄送人
 					receiveUser: '', // 抄送人
 					effectiveEndTime: '' // 整改到期日
 					effectiveEndTime: '' // 整改到期日
 				},
 				},
+				storeSelected : [], // 已选门店
 				remarks: '' // 备注
 				remarks: '' // 备注
 			}
 			}
 		},
 		},
 		onLoad(option) {
 		onLoad(option) {
-			
+			uni.$on('selKpStores',this.setStore)
 		}, 
 		}, 
 		methods: { 
 		methods: { 
-			// 拍照 或从相册选相片
+			// 获取选择门店
+			setStore (data) {
+				console.log(data,'eeeeeeee')
+				this.storeSelected = data
+				this.form.storeName = this.storeSelected[0].name
+				this.form.storeId = this.storeSelected[0].id
+				console.log(this.storeSelected,this.form.storeName,'2222222')
+			},
+			// 拍照 或从相册选相片 
 			takePhone () {
 			takePhone () {
 				let _this = this
 				let _this = this
 				uni.chooseImage({
 				uni.chooseImage({
@@ -91,7 +105,7 @@
 			// 选择门店
 			// 选择门店
 			chooseStore () {
 			chooseStore () {
 				uni.navigateTo({
 				uni.navigateTo({
-					url: '/pages/spotCheckConfigure/evaluateStore'
+					url: `/pages/spotCheckConfigure/evaluateStore?type=${'radio'}&item=${encodeURIComponent(JSON.stringify(this.storeSelected))}`
 				})
 				})
 			},
 			},
 			// 选择考评指标
 			// 选择考评指标

+ 3 - 2
pages/toDoList/backlogDetail.vue

@@ -105,13 +105,14 @@
 				})
 				})
 			},
 			},
 			// 获取进度数据
 			// 获取进度数据
-			getRecordData (id) {
+			getRecordData (id) { 
 				getBackLogRecord({id:id}).then(res=>{
 				getBackLogRecord({id:id}).then(res=>{
 					if(res.status==200){
 					if(res.status==200){
 						let arr = []
 						let arr = []
 						res.data.map(item=>{
 						res.data.map(item=>{
 							const p = {}
 							const p = {}
-							p.name = item.handleTime + "'\xa0\xa0\xa0\xa0\xa0\xa0\'" + item.handleType + "'\xa0\xa0\xa0\xa0\xa0\xa0\'" + (item.handleDesc ? item.handleDesc : '')
+							const k = '\xa0\xa0\xa0\xa0\xa0\xa0'
+							p.name = item.handleTime + k + item.handleType + k + (item.handleDesc ? item.handleDesc : '')
 							arr.push(p)
 							arr.push(p)
 						})
 						})
 						this.numList = arr
 						this.numList = arr

+ 0 - 67
pages/toDoList/choosePutUser.vue

@@ -1,67 +0,0 @@
-<template>
-	<view>
-		<uni-check-list :listData="list"></uni-check-list>
-	</view>
-</template>
-
-<script>
-	import uniCheckList from '@/components/uni-check-list/uni-check-list.vue'
-	export default {
-		components: {
-			uniCheckList
-		},
-		data() {
-			return {
-				list: [{
-						value: 'USA',
-						name: '美国'
-					},
-					{
-						value: 'CHN',
-						name: '中国',
-						checked: 'true'
-					},
-					{
-						value: 'BRA',
-						name: '巴西'
-					},
-					{
-						value: 'JPN',
-						name: '日本'
-					},
-					{
-						value: 'ENG',
-						name: '英国'
-					},
-					{
-						value: 'FRA',
-						name: '法国'
-					}
-				]
-			}
-		},
-		methods: {
-			// 改变checkbox的选中状态
-			checkboxChange(e) {
-				var items = this.items,
-					values = e.detail.value;
-				for (var i = 0, lenI = items.length; i < lenI; ++i) {
-					const item = items[i]
-					if(values.includes(item.value)){
-						this.$set(item,'checked',true)
-					}else{
-						this.$set(item,'checked',false)
-					}
-					console.log(item,'--------------')
-				}
-				
-			},
-			submit(){
-				console.log('-------tijiao')
-			}
-		}
-	}
-</script>
-
-<style>
-</style>

+ 45 - 51
pages/toDoList/chooseReceiveUser.vue

@@ -1,67 +1,61 @@
 <template>
 <template>
-	<view>
-		<uni-check-list :listData="list"></uni-check-list>
-	</view>
+	<!-- @rightClick 只有存在右边部分的情况下才使用,
+	 右边默认为空,可以使用slot="right" 自定义右边内容
+	 @ok 是单选或多选最终返回的结果
+	 types 类型 radio或checkbox
+	 titleKeys 标题对应的字段名称key,默认是name
+	 listData 是数据
+	 showArrow 是否显示右边箭头
+	 backValue 设置返回的数据是idArr [id,id,...] 或 objArr [obj,obj,...]
+	 defValue 设置已选择的数据,格式和backValue 一致
+	 checkIconPositon 选择图标显示左边还是右边 left or right
+	 -->
+	<uni-check-list 
+	:listData="list" 
+	checkIconPositon="right" 
+	:showArrow="false" 
+	:defValue="value" 
+	:types="type" 
+	backValue="objArr"
+	@ok="chooseOk">
+	</uni-check-list>
 </template>
 </template>
 
 
 <script>
 <script>
-	import uniCheckList from '@/components/uni-check-list/uni-check-list.vue'
+	import {findStoreList} from '@/api/store'
 	export default {
 	export default {
-		components: {
-			uniCheckList
-		},
 		data() {
 		data() {
 			return {
 			return {
-				list: [{
-						value: 'USA',
-						name: '美国'
-					},
-					{
-						value: 'CHN',
-						name: '中国',
-						checked: 'true'
-					},
-					{
-						value: 'BRA',
-						name: '巴西'
-					},
-					{
-						value: 'JPN',
-						name: '日本'
-					},
-					{
-						value: 'ENG',
-						name: '英国'
-					},
-					{
-						value: 'FRA',
-						name: '法国'
-					}
-				]
+				list: [],
+				value: [],
+				type: ''  // 单选或多选
 			}
 			}
 		},
 		},
-		methods: {
-			// 改变checkbox的选中状态
-			checkboxChange(e) {
-				var items = this.items,
-					values = e.detail.value;
-				for (var i = 0, lenI = items.length; i < lenI; ++i) {
-					const item = items[i]
-					if(values.includes(item.value)){
-						this.$set(item,'checked',true)
-					}else{
-						this.$set(item,'checked',false)
-					}
-					console.log(item,'--------------')
+		onLoad(opts) {
+			this.value = opts.item&&JSON.parse(opts.item)||[]
+			this.type = opts.type && opts.type || 'checkbox'
+			console.log(this.value)
+			// 查询门店
+			findStoreList({}).then(res=>{
+				if(res.status == 200){
+					this.list = res.data || []
 				}
 				}
-				
+			})
+		},
+		methods: {
+			// 选中门店,item 返回的是数组
+			chooseOk(item) {
+				console.log(item)
+				//关闭当前页面,这里处理数据逻辑
+				uni.$emit("selKpStores",item)
+				uni.navigateBack()
 			},
 			},
-			submit(){
-				console.log('-------tijiao')
-			}
 		}
 		}
 	}
 	}
 </script>
 </script>
 
 
-<style>
+<style lang="scss">
+	page{
+		height: 100%;
+	}
 </style>
 </style>

+ 36 - 67
pages/toDoList/searchModal.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
 	<!-- 待办单查询 -->
 	<!-- 待办单查询 -->
 	<div class="modal-content">
 	<div class="modal-content">
-		<u-popup v-model="isshow" class="search-popup" mode="right" @close="handleClose" :custom-style="{top:'var(--status-bar-height)'}" length="90%">
+		<u-popup v-model="isshow" class="search-popup" mode="right" @close="handleClose"  length="85%">
 			<view class="search-title">待办单查询</view>
 			<view class="search-title">待办单查询</view>
 			<u-form class="form-content" :model="form" ref="uForm" label-width="150">
 			<u-form class="form-content" :model="form" ref="uForm" label-width="150">
 				<u-form-item label="发起时间" prop="time">
 				<u-form-item label="发起时间" prop="time">
@@ -28,29 +28,27 @@
 				<button type="primary" @click="handleSearch">查询</button>
 				<button type="primary" @click="handleSearch">查询</button>
 				<button type="info" @click="resetForm">重置</button>
 				<button type="info" @click="resetForm">重置</button>
 			</view>
 			</view>
-			<!-- 时间选择器 -->
-			<w-picker
-			class="date-picker"
-				:visible.sync="showPicker"
-				mode="range" 
-				:current="true"
-				fields="day"
-				@confirm="onSelected($event,'range')"
-				@cancel="showPicker=false"
-				ref="date" 
-			></w-picker>
 			<!-- <mx-date-picker class="date-picker" :show="showPicker" type="range" format="yyyy-mm-dd" :value="form.time" :show-tips="true" @confirm="onSelected" @cancel="showPicker=false" /> -->
 			<!-- <mx-date-picker class="date-picker" :show="showPicker" type="range" format="yyyy-mm-dd" :value="form.time" :show-tips="true" @confirm="onSelected" @cancel="showPicker=false" /> -->
 		</u-popup>
 		</u-popup>
-		
+		<!-- 时间选择器 -->
+		<w-picker
+		class="date-picker"
+			:visible.sync="showPicker"
+			mode="range" 
+			:current="true"
+			fields="day"
+			@confirm="onSelected($event,'range')"
+			@cancel="showPicker=false"
+			ref="date" 
+		></w-picker>
 	</div>
 	</div>
 </template>
 </template>
 
 
 <script>
 <script>
 	import wPicker from "@/components/w-picker/w-picker.vue"
 	import wPicker from "@/components/w-picker/w-picker.vue"
-	import MxDatePicker from "@/components/mx-datepicker/mx-datepicker.vue"
+	import { getLookUpDatas } from '@/api/data.js'
 	export default {
 	export default {
 		components: {
 		components: {
-			MxDatePicker,
 			wPicker
 			wPicker
 		},
 		},
 		props: {
 		props: {
@@ -77,58 +75,8 @@
 			return {
 			return {
 				isshow: this.visible,  // 显示隐藏
 				isshow: this.visible,  // 显示隐藏
 				showPicker: false, // 是否显示时间弹窗
 				showPicker: false, // 是否显示时间弹窗
-				statusList: [
-					{
-						id: 1,
-						code: 'pending',
-						dispName: '待整改',
-						checked: false
-					},
-					{
-						id: 12,
-						code: 'check_pending',
-						dispName: '待审核',
-						checked: false
-					},
-					{
-						id: 13,
-						code: 'finished',
-						dispName: '整改完成',
-						checked: false
-					},
-					{
-						id: 14,
-						code: 'expired',
-						dispName: '已过期',
-						checked: false
-					},
-				], // 状态列表
-				sourceTypeList: [
-					{
-						id: 1,
-						code: 'remote_check',
-						dispName: '远程巡店',
-						checked: false
-					},
-					{
-						id: 12,
-						code: 'spot_check',
-						dispName: '现场巡店',
-						checked: false
-					},
-					{
-						id: 13,
-						code: 'point_check',
-						dispName: '点检',
-						checked: false
-					},
-					{
-						id: 14,
-						code: 'manual',
-						dispName: '手动创建',
-						checked: false
-					},
-				], // 检查方式列表
+				statusList: [], // 状态列表
+				sourceTypeList: [], // 检查方式列表
 				form: {
 				form: {
 					time: '', // 发起时间区间
 					time: '', // 发起时间区间
 					storeName: '', // 门店名称
 					storeName: '', // 门店名称
@@ -148,7 +96,28 @@
 				return this.filterData(this.sourceTypeList)
 				return this.filterData(this.sourceTypeList)
 			}
 			}
 		},
 		},
+		mounted() {
+			// 获取单据状态 和 检查方式列表
+			this.getLookUpData('BACKLOG_STATUS')
+			this.getLookUpData('BACKLOG_SOURCE_TYPE')
+		},
 		methods: {
 		methods: {
+			// 获取数据字典数据
+			getLookUpData (code) {
+				getLookUpDatas({type:code}).then(res=>{
+					if (res.status == 200) {
+						res.data.map(item => {
+							item.checked = false
+						})
+						if (code == 'BACKLOG_STATUS') {
+							this.statusList = res.data
+						}
+						if (code == 'BACKLOG_SOURCE_TYPE') {
+							this.sourceTypeList = res.data
+						}
+					}
+				})
+			},
 			// 关闭弹窗
 			// 关闭弹窗
 			handleClose () {
 			handleClose () {
 				this.isshow = false
 				this.isshow = false

+ 2 - 11
pages/toDoList/toDoList.vue

@@ -1,14 +1,5 @@
 <template>
 <template>
 	<view class="pagesCons">
 	<view class="pagesCons">
-		<!-- 自定义标题 -->
-		<u-navbar title-color="#fff" back-icon-size="30" back-icon-color="#fff" :border-bottom="false" :background="background" id="navbar">
-			<view class="slot-wrap">
-				<view class="left-icon">待办单</view>
-				<view class="right-icon" @click="intoAddPage">
-					<u-icon name="plus-circle" color="#fff" size="32"></u-icon>新增
-				</view>
-			</view>
-		</u-navbar>
 		<view class="tab-body">
 		<view class="tab-body">
 			    <view>
 			    <view>
 					<u-tabs-swiper ref="uTabs" :list="tabList" name="dispName" :current="current" @change="tabsChange" :is-scroll="false"
 					<u-tabs-swiper ref="uTabs" :list="tabList" name="dispName" :current="current" @change="tabsChange" :is-scroll="false"
@@ -41,7 +32,7 @@
 							class="check-order-list" 
 							class="check-order-list" 
 							v-if="index==current"
 							v-if="index==current"
 							v-for="(item,sindex) in list" 
 							v-for="(item,sindex) in list" 
-							:key="item.id+item.backlogNo"
+							:key="item.id+item.createDate"
 							@click="viewRow(item)"
 							@click="viewRow(item)"
 							>
 							>
 								 <view class="check-row">
 								 <view class="check-row">
@@ -266,7 +257,7 @@
 				this.getRow(1)
 				this.getRow(1)
 			},
 			},
 			// 新增页
 			// 新增页
-			intoAddPage() {
+			onNavigationBarButtonTap(e) {
 				uni.navigateTo({
 				uni.navigateTo({
 					url: "/pages/toDoList/addBacklog"
 					url: "/pages/toDoList/addBacklog"
 				})
 				})

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 0
unpackage/dist/dev/app-plus/app-config-service.js


A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 1
unpackage/dist/dev/app-plus/app-service.js


A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 74 - 195
unpackage/dist/dev/app-plus/app-view.js


Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott