Commit f6941768 by LJM

异常管理

parent 8d53b745
Showing with 555 additions and 274 deletions
...@@ -11,6 +11,14 @@ ...@@ -11,6 +11,14 @@
-moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale;
} }
.icon-danxuanxuanzhong-weixuanzhong:before {
content: "\e605";
}
.icon-danxuankuangdanxuan-xuanzhong-weixuanzhong:before {
content: "\e601";
}
.icon-a-juxing21:before { .icon-a-juxing21:before {
content: "\e794"; content: "\e794";
} }
......
...@@ -246,6 +246,28 @@ ...@@ -246,6 +246,28 @@
"style": { "style": {
"navigationBarTitleText": "理货记录" "navigationBarTitleText": "理货记录"
} }
}, {
"path": "pages/tally/abnormalManageList",
"style": {
"navigationBarTitleText": "异常管理",
"app-plus": {
"titleNView": {
"buttons": [{
"index": "0",
"text": "新增异常",
"fontSize": "15px",
"color": "#1969F9",
"float": "right",
"width": "120px"
}]
}
}
}
}, {
"path": "pages/tally/addAbnormal",
"style": {
"navigationBarTitleText": "新增异常"
}
}], }],
"globalStyle": { "globalStyle": {
"navigationBarTextStyle": "black", "navigationBarTextStyle": "black",
......
...@@ -149,6 +149,11 @@ ...@@ -149,6 +149,11 @@
name: '货品查询', name: '货品查询',
iconfont: 'icon-huopinchaxun', iconfont: 'icon-huopinchaxun',
tips: '' tips: ''
},
{
name: '异常管理',
iconfont: 'icon-a-10cangkucangchu1',
tips: ''
} }
] ]
}; };
...@@ -283,6 +288,10 @@ ...@@ -283,6 +288,10 @@
uni.navigateTo({ uni.navigateTo({
url: '/pages/tally/goods' url: '/pages/tally/goods'
}); });
} else if (item.name == '异常管理') {
uni.navigateTo({
url: '/pages/tally/abnormalManageList'
});
} else { } else {
uni.showModal({ uni.showModal({
title: '提示', title: '提示',
......
<template>
<view class="page-box">
</view>
</template>
<script>
import { API } from '@/util/api.js';
export default {
data() {
return {
order_id: '',
erp_order_sn: '',
salesman: '',
orderDetailByIdIndex: '',
orderDetailByIdList: {},
quickExpressions: {}
};
},
onLoad(options) {
this.order_id = options.order_id;
this.erp_order_sn = options.erp_order_sn;
this.salesman = options.salesman;
this.orderDetailByIdIndex = options.orderDetailByIdIndex;
},
onShow() {
this.getData();
},
methods: {
getData() {
this.request(API.getOrderDetailById, 'GET', { order_id: this.order_id }, true).then(res => {
if (res.err_code === 0) {
this.orderDetailByIdList = res.data[this.orderDetailByIdIndex];
} else {
uni.showToast({
title: res.err_msg,
icon: 'none'
});
}
});
this.request(API.getQuickExpressions, 'GET', { abnormal_type: 1 }, true).then(res => {
if (res.err_code === 0) {
this.quickExpressions = res.data;
} else {
uni.showToast({
title: res.err_msg,
icon: 'none'
});
}
});
}
}
};
</script>
<style scoped lang="scss">
@import '@/assets/css/tally/addAbnormal.scss';
</style>
\ No newline at end of file
No preview for this file type
...@@ -13,10 +13,10 @@ ...@@ -13,10 +13,10 @@
'uni-calendar-item--after-checked':weeks.afterMultiple, 'uni-calendar-item--after-checked':weeks.afterMultiple,
'uni-calendar-item--disable':weeks.disable, 'uni-calendar-item--disable':weeks.disable,
}"> }">
<text v-if="selected&&weeks.extraInfo" class="uni-calendar-item__weeks-box-circle"></text> <text v-if="selected && weeks.extraInfo" class="uni-calendar-item__weeks-box-circle"></text>
<text class="uni-calendar-item__weeks-box-text uni-calendar-item__weeks-box-text-disable uni-calendar-item--checked-text">{{weeks.date}}</text> <text class="uni-calendar-item__weeks-box-text uni-calendar-item__weeks-box-text-disable uni-calendar-item--checked-text">{{weeks.date}}</text>
</view> </view>
<view :class="{'uni-calendar-item--isDay': weeks.isDay}"></view> <view :class="{'uni-calendar-item--today': weeks.isToday}"></view>
</view> </view>
</template> </template>
...@@ -41,10 +41,6 @@ ...@@ -41,10 +41,6 @@
return [] return []
} }
}, },
lunar: {
type: Boolean,
default: false
},
checkHover: { checkHover: {
type: Boolean, type: Boolean,
default: false default: false
...@@ -62,6 +58,8 @@ ...@@ -62,6 +58,8 @@
</script> </script>
<style lang="scss" > <style lang="scss" >
$uni-primary: #007aff !default;
.uni-calendar-item__weeks-box { .uni-calendar-item__weeks-box {
flex: 1; flex: 1;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
...@@ -78,12 +76,7 @@ ...@@ -78,12 +76,7 @@
font-size: 14px; font-size: 14px;
// font-family: Lato-Bold, Lato; // font-family: Lato-Bold, Lato;
font-weight: bold; font-weight: bold;
color: #455997; color: darken($color: $uni-primary, $amount: 40%);
}
.uni-calendar-item__weeks-lunar-text {
font-size: 12px;
color: #333;
} }
.uni-calendar-item__weeks-box-item { .uni-calendar-item__weeks-box-item {
...@@ -114,7 +107,6 @@ ...@@ -114,7 +107,6 @@
} }
.uni-calendar-item__weeks-box .uni-calendar-item--disable { .uni-calendar-item__weeks-box .uni-calendar-item--disable {
// background-color: rgba(249, 249, 249, $uni-opacity-disabled);
cursor: default; cursor: default;
} }
...@@ -122,7 +114,7 @@ ...@@ -122,7 +114,7 @@
color: #D1D1D1; color: #D1D1D1;
} }
.uni-calendar-item--isDay { .uni-calendar-item--today {
position: absolute; position: absolute;
top: 10px; top: 10px;
right: 17%; right: 17%;
...@@ -138,7 +130,7 @@ ...@@ -138,7 +130,7 @@
} }
.uni-calendar-item__weeks-box .uni-calendar-item--checked { .uni-calendar-item__weeks-box .uni-calendar-item--checked {
background-color: #007aff; background-color: $uni-primary;
border-radius: 50%; border-radius: 50%;
box-sizing: border-box; box-sizing: border-box;
border: 3px solid #fff; border: 3px solid #fff;
...@@ -159,7 +151,7 @@ ...@@ -159,7 +151,7 @@
.uni-calendar-item--multiple .uni-calendar-item--before-checked, .uni-calendar-item--multiple .uni-calendar-item--before-checked,
.uni-calendar-item--multiple .uni-calendar-item--after-checked { .uni-calendar-item--multiple .uni-calendar-item--after-checked {
background-color: #409eff; background-color: $uni-primary;
border-radius: 50%; border-radius: 50%;
box-sizing: border-box; box-sizing: border-box;
border: 3px solid #F6F7FC; border: 3px solid #F6F7FC;
......
{ {
"uni-datetime-picker.selectDate": "select date", "uni-datetime-picker.selectDate": "select date",
"uni-datetime-picker.selectTime": "select time", "uni-datetime-picker.selectTime": "select time",
"uni-datetime-picker.selectDateTime": "select datetime", "uni-datetime-picker.selectDateTime": "select date and time",
"uni-datetime-picker.startDate": "start date", "uni-datetime-picker.startDate": "start date",
"uni-datetime-picker.endDate": "end date", "uni-datetime-picker.endDate": "end date",
"uni-datetime-picker.startTime": "start time", "uni-datetime-picker.startTime": "start time",
......
...@@ -77,21 +77,20 @@ ...@@ -77,21 +77,20 @@
</view> </view>
</view> </view>
</view> </view>
<!-- #ifdef H5 -->
<!-- <keypress v-if="visible" @esc="tiggerTimePicker" @enter="setTime" /> -->
<!-- #endif -->
</view> </view>
</template> </template>
<script> <script>
// #ifdef H5
import keypress from './keypress'
// #endif
import { import {
initVueI18n initVueI18n
} from '@dcloudio/uni-i18n' } from '@dcloudio/uni-i18n'
import messages from './i18n/index.js' import i18nMessages from './i18n/index.js'
const { t } = initVueI18n(messages) const {
t
} = initVueI18n(i18nMessages)
import {
fixIosDateFormat
} from './util'
/** /**
* DatetimePicker 时间选择器 * DatetimePicker 时间选择器
...@@ -108,11 +107,6 @@ ...@@ -108,11 +107,6 @@
export default { export default {
name: 'UniDatetimePicker', name: 'UniDatetimePicker',
components: {
// #ifdef H5
keypress
// #endif
},
data() { data() {
return { return {
indicatorStyle: `height: 50px;`, indicatorStyle: `height: 50px;`,
...@@ -146,6 +140,14 @@ ...@@ -146,6 +140,14 @@
endSecond: 59, endSecond: 59,
} }
}, },
options: {
// #ifdef MP-TOUTIAO
virtualHost: false,
// #endif
// #ifndef MP-TOUTIAO
virtualHost: true
// #endif
},
props: { props: {
type: { type: {
type: String, type: String,
...@@ -185,10 +187,11 @@ ...@@ -185,10 +187,11 @@
} }
}, },
watch: { watch: {
// #ifndef VUE3
value: { value: {
handler(newVal, oldVal) { handler(newVal) {
if (newVal) { if (newVal) {
this.parseValue(this.fixIosDateFormat(newVal)) //兼容 iOS、safari 日期格式 this.parseValue(fixIosDateFormat(newVal))
this.initTime(false) this.initTime(false)
} else { } else {
this.time = '' this.time = ''
...@@ -197,6 +200,21 @@ ...@@ -197,6 +200,21 @@
}, },
immediate: true immediate: true
}, },
// #endif
// #ifdef VUE3
modelValue: {
handler(newVal) {
if (newVal) {
this.parseValue(fixIosDateFormat(newVal))
this.initTime(false)
} else {
this.time = ''
this.parseValue(Date.now())
}
},
immediate: true
},
// #endif
type: { type: {
handler(newValue) { handler(newValue) {
if (newValue === 'date') { if (newValue === 'date') {
...@@ -217,13 +235,13 @@ ...@@ -217,13 +235,13 @@
}, },
start: { start: {
handler(newVal) { handler(newVal) {
this.parseDatetimeRange(this.fixIosDateFormat(newVal), 'start') //兼容 iOS、safari 日期格式 this.parseDatetimeRange(fixIosDateFormat(newVal), 'start')
}, },
immediate: true immediate: true
}, },
end: { end: {
handler(newVal) { handler(newVal) {
this.parseDatetimeRange(this.fixIosDateFormat(newVal), 'end') //兼容 iOS、safari 日期格式 this.parseDatetimeRange(fixIosDateFormat(newVal), 'end')
}, },
immediate: true immediate: true
}, },
...@@ -527,7 +545,7 @@ ...@@ -527,7 +545,7 @@
const day = now.getDate() const day = now.getDate()
dateBase = year + '/' + month + '/' + day + ' ' dateBase = year + '/' + month + '/' + day + ' '
} }
if (Number(value) && typeof value !== NaN) { if (Number(value)) {
value = parseInt(value) value = parseInt(value)
dateBase = 0 dateBase = 0
} }
...@@ -598,7 +616,7 @@ ...@@ -598,7 +616,7 @@
pointType === 'start' ? this.startYear = this.year - 60 : this.endYear = this.year + 60 pointType === 'start' ? this.startYear = this.year - 60 : this.endYear = this.year + 60
return return
} }
if (Number(point) && Number(point) !== NaN) { if (Number(point)) {
point = parseInt(point) point = parseInt(point)
} }
// datetime 的 end 没有时分秒, 则不限制 // datetime 的 end 没有时分秒, 则不限制
...@@ -645,14 +663,6 @@ ...@@ -645,14 +663,6 @@
return new Date(year, month, 0).getDate(); return new Date(year, month, 0).getDate();
}, },
//兼容 iOS、safari 日期格式
fixIosDateFormat(value) {
if (typeof value === 'string') {
value = value.replace(/-/g, '/')
}
return value
},
/** /**
* 生成时间戳 * 生成时间戳
* @param {Object} time * @param {Object} time
...@@ -736,7 +746,7 @@ ...@@ -736,7 +746,7 @@
*/ */
initTimePicker() { initTimePicker() {
if (this.disabled) return if (this.disabled) return
const value = this.fixIosDateFormat(this.value) const value = fixIosDateFormat(this.time)
this.initPickerValue(value) this.initPickerValue(value)
this.visible = !this.visible this.visible = !this.visible
}, },
...@@ -770,7 +780,9 @@ ...@@ -770,7 +780,9 @@
} }
</script> </script>
<style> <style lang="scss">
$uni-primary: #007aff !default;
.uni-datetime-picker { .uni-datetime-picker {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
/* width: 100%; */ /* width: 100%; */
...@@ -804,7 +816,7 @@ ...@@ -804,7 +816,7 @@
.uni-datetime-picker-btn-text { .uni-datetime-picker-btn-text {
font-size: 14px; font-size: 14px;
color: #007AFF; color: $uni-primary;
} }
.uni-datetime-picker-btn-group { .uni-datetime-picker-btn-group {
...@@ -889,6 +901,7 @@ ...@@ -889,6 +901,7 @@
.uni-datetime-picker-text { .uni-datetime-picker-text {
font-size: 14px; font-size: 14px;
line-height: 50px
} }
.uni-datetime-picker-sign { .uni-datetime-picker-sign {
......
{ {
"id": "uni-datetime-picker", "id": "uni-datetime-picker",
"displayName": "uni-datetime-picker 日期选择器", "displayName": "uni-datetime-picker 日期选择器",
"version": "2.2.6", "version": "2.2.34",
"description": "uni-datetime-picker 日期时间选择器,支持日历,支持范围选择", "description": "uni-datetime-picker 日期时间选择器,支持日历,支持范围选择",
"keywords": [ "keywords": [
"uni-datetime-picker", "uni-datetime-picker",
...@@ -17,11 +17,7 @@ ...@@ -17,11 +17,7 @@
"directories": { "directories": {
"example": "../../temps/example_temps" "example": "../../temps/example_temps"
}, },
"dcloudext": { "dcloudext": {
"category": [
"前端组件",
"通用组件"
],
"sale": { "sale": {
"regular": { "regular": {
"price": "0.00" "price": "0.00"
...@@ -38,7 +34,8 @@ ...@@ -38,7 +34,8 @@
"data": "无", "data": "无",
"permissions": "无" "permissions": "无"
}, },
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
}, },
"uni_modules": { "uni_modules": {
"dependencies": [ "dependencies": [
...@@ -49,7 +46,8 @@ ...@@ -49,7 +46,8 @@
"platforms": { "platforms": {
"cloud": { "cloud": {
"tcb": "y", "tcb": "y",
"aliyun": "y" "aliyun": "y",
"alipay": "n"
}, },
"client": { "client": {
"App": { "App": {
......
## 2.0.10(2024-06-07)
- 优化 uni-app x 中,size 属性的类型
## 2.0.9(2024-01-12)
fix: 修复图标大小默认值错误的问题
## 2.0.8(2023-12-14)
- 修复 项目未使用 ts 情况下,打包报错的bug
## 2.0.7(2023-12-14)
- 修复 size 属性为 string 时,不加单位导致尺寸异常的bug
## 2.0.6(2023-12-11)
- 优化 兼容老版本icon类型,如 top ,bottom 等
## 2.0.5(2023-12-11)
- 优化 兼容老版本icon类型,如 top ,bottom 等
## 2.0.4(2023-12-06)
- 优化 uni-app x 下示例项目图标排序
## 2.0.3(2023-12-06)
- 修复 nvue下引入组件报错的bug
## 2.0.2(2023-12-05)
-优化 size 属性支持单位
## 2.0.1(2023-12-05)
- 新增 uni-app x 支持定义图标
## 1.3.5(2022-01-24) ## 1.3.5(2022-01-24)
- 优化 size 属性可以传入不带单位的字符串数值 - 优化 size 属性可以传入不带单位的字符串数值
## 1.3.4(2022-01-24) ## 1.3.4(2022-01-24)
......
<template>
<text class="uni-icons" :style="styleObj">
<slot>{{unicode}}</slot>
</text>
</template>
<script>
import { fontData, IconsDataItem } from './uniicons_file'
/**
* Icons 图标
* @description 用于展示 icon 图标
* @tutorial https://ext.dcloud.net.cn/plugin?id=28
* @property {Number,String} size 图标大小
* @property {String} type 图标图案,参考示例
* @property {String} color 图标颜色
* @property {String} customPrefix 自定义图标
* @event {Function} click 点击 Icon 触发事件
*/
export default {
name: "uni-icons",
props: {
type: {
type: String,
default: ''
},
color: {
type: String,
default: '#333333'
},
size: {
type: [Number, String],
default: 16
},
fontFamily: {
type: String,
default: ''
}
},
data() {
return {};
},
computed: {
unicode() : string {
let codes = fontData.find((item : IconsDataItem) : boolean => { return item.font_class == this.type })
if (codes !== null) {
return codes.unicode
}
return ''
},
iconSize() : string {
const size = this.size
if (typeof size == 'string') {
const reg = /^[0-9]*$/g
return reg.test(size as string) ? '' + size + 'px' : '' + size;
// return '' + this.size
}
return this.getFontSize(size as number)
},
styleObj() : UTSJSONObject {
if (this.fontFamily !== '') {
return { color: this.color, fontSize: this.iconSize, fontFamily: this.fontFamily }
}
return { color: this.color, fontSize: this.iconSize }
}
},
created() { },
methods: {
/**
* 字体大小
*/
getFontSize(size : number) : string {
return size + 'px';
},
},
}
</script>
<style scoped>
@font-face {
font-family: UniIconsFontFamily;
src: url('./uniicons.ttf');
}
.uni-icons {
font-family: UniIconsFontFamily;
font-size: 18px;
font-style: normal;
color: #333;
}
</style>
<template> <template>
<!-- #ifdef APP-NVUE --> <!-- #ifdef APP-NVUE -->
<text :style="{ color: color, 'font-size': iconSize }" class="uni-icons" @click="_onClick">{{unicode}}</text> <text :style="styleObj" class="uni-icons" @click="_onClick">{{unicode}}</text>
<!-- #endif --> <!-- #endif -->
<!-- #ifndef APP-NVUE --> <!-- #ifndef APP-NVUE -->
<text :style="{ color: color, 'font-size': iconSize }" class="uni-icons" :class="['uniui-'+type,customPrefix,customPrefix?type:'']" @click="_onClick"></text> <text :style="styleObj" class="uni-icons" :class="['uniui-'+type,customPrefix,customPrefix?type:'']" @click="_onClick">
<slot></slot>
</text>
<!-- #endif --> <!-- #endif -->
</template> </template>
<script> <script>
import icons from './icons.js'; import { fontData } from './uniicons_file_vue.js';
const getVal = (val) => { const getVal = (val) => {
const reg = /^[0-9]*$/g const reg = /^[0-9]*$/g
return (typeof val === 'number' || reg.test(val) )? val + 'px' : val; return (typeof val === 'number' || reg.test(val)) ? val + 'px' : val;
} }
// #ifdef APP-NVUE // #ifdef APP-NVUE
var domModule = weex.requireModule('dom'); var domModule = weex.requireModule('dom');
import iconUrl from './uniicons.ttf' import iconUrl from './uniicons.ttf'
domModule.addRule('fontFace', { domModule.addRule('fontFace', {
'fontFamily': "uniicons", 'fontFamily': "uniicons",
'src': "url('"+iconUrl+"')" 'src': "url('" + iconUrl + "')"
}); });
// #endif // #endif
...@@ -34,7 +38,7 @@ ...@@ -34,7 +38,7 @@
*/ */
export default { export default {
name: 'UniIcons', name: 'UniIcons',
emits:['click'], emits: ['click'],
props: { props: {
type: { type: {
type: String, type: String,
...@@ -48,26 +52,36 @@ ...@@ -48,26 +52,36 @@
type: [Number, String], type: [Number, String],
default: 16 default: 16
}, },
customPrefix:{ customPrefix: {
type: String,
default: ''
},
fontFamily: {
type: String, type: String,
default: '' default: ''
} }
}, },
data() { data() {
return { return {
icons: icons.glyphs icons: fontData
} }
}, },
computed:{ computed: {
unicode(){ unicode() {
let code = this.icons.find(v=>v.font_class === this.type) let code = this.icons.find(v => v.font_class === this.type)
if(code){ if (code) {
return unescape(`%u${code.unicode}`) return code.unicode
} }
return '' return ''
}, },
iconSize(){ iconSize() {
return getVal(this.size) return getVal(this.size)
},
styleObj() {
if (this.fontFamily !== '') {
return `color: ${this.color}; font-size: ${this.iconSize}; font-family: ${this.fontFamily};`
}
return `color: ${this.color}; font-size: ${this.iconSize};`
} }
}, },
methods: { methods: {
...@@ -81,9 +95,10 @@ ...@@ -81,9 +95,10 @@
<style lang="scss"> <style lang="scss">
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
@import './uniicons.css'; @import './uniicons.css';
@font-face { @font-face {
font-family: uniicons; font-family: uniicons;
src: url('./uniicons.ttf') format('truetype'); src: url('./uniicons.ttf');
} }
/* #endif */ /* #endif */
...@@ -92,5 +107,4 @@ ...@@ -92,5 +107,4 @@
text-decoration: none; text-decoration: none;
text-align: center; text-align: center;
} }
</style> </style>
.uniui-cart-filled:before {
content: "\e6d0";
}
.uniui-gift-filled:before {
content: "\e6c4";
}
.uniui-color:before { .uniui-color:before {
content: "\e6cf"; content: "\e6cf";
} }
...@@ -58,10 +67,6 @@ ...@@ -58,10 +67,6 @@
content: "\e6c3"; content: "\e6c3";
} }
.uniui-gift-filled:before {
content: "\e6c4";
}
.uniui-fire-filled:before { .uniui-fire-filled:before {
content: "\e6c5"; content: "\e6c5";
} }
...@@ -82,6 +87,18 @@ ...@@ -82,6 +87,18 @@
content: "\e698"; content: "\e698";
} }
.uniui-arrowthinleft:before {
content: "\e6d2";
}
.uniui-arrowthinup:before {
content: "\e6d3";
}
.uniui-arrowthindown:before {
content: "\e6d4";
}
.uniui-back:before { .uniui-back:before {
content: "\e6b9"; content: "\e6b9";
} }
...@@ -94,55 +111,43 @@ ...@@ -94,55 +111,43 @@
content: "\e6bb"; content: "\e6bb";
} }
.uniui-arrowthinright:before {
content: "\e6bb";
}
.uniui-arrow-left:before { .uniui-arrow-left:before {
content: "\e6bc"; content: "\e6bc";
} }
.uniui-arrowthinleft:before {
content: "\e6bc";
}
.uniui-arrow-up:before { .uniui-arrow-up:before {
content: "\e6bd"; content: "\e6bd";
} }
.uniui-arrowthinup:before {
content: "\e6bd";
}
.uniui-arrow-down:before { .uniui-arrow-down:before {
content: "\e6be"; content: "\e6be";
} }
.uniui-arrowthindown:before { .uniui-arrowthinright:before {
content: "\e6be"; content: "\e6d1";
} }
.uniui-bottom:before { .uniui-down:before {
content: "\e6b8"; content: "\e6b8";
} }
.uniui-arrowdown:before { .uniui-bottom:before {
content: "\e6b8"; content: "\e6b8";
} }
.uniui-right:before { .uniui-arrowright:before {
content: "\e6b5"; content: "\e6d5";
} }
.uniui-arrowright:before { .uniui-right:before {
content: "\e6b5"; content: "\e6b5";
} }
.uniui-top:before { .uniui-up:before {
content: "\e6b6"; content: "\e6b6";
} }
.uniui-arrowup:before { .uniui-top:before {
content: "\e6b6"; content: "\e6b6";
} }
...@@ -150,8 +155,8 @@ ...@@ -150,8 +155,8 @@
content: "\e6b7"; content: "\e6b7";
} }
.uniui-arrowleft:before { .uniui-arrowup:before {
content: "\e6b7"; content: "\e6d6";
} }
.uniui-eye:before { .uniui-eye:before {
...@@ -638,10 +643,6 @@ ...@@ -638,10 +643,6 @@
content: "\e627"; content: "\e627";
} }
.uniui-cart-filled:before {
content: "\e629";
}
.uniui-checkbox:before { .uniui-checkbox:before {
content: "\e62b"; content: "\e62b";
} }
......
{ {
"id": "uni-icons", "id": "uni-icons",
"displayName": "uni-icons 图标", "displayName": "uni-icons 图标",
"version": "1.3.5", "version": "2.0.10",
"description": "图标组件,用于展示移动端常见的图标,可自定义颜色、大小。", "description": "图标组件,用于展示移动端常见的图标,可自定义颜色、大小。",
"keywords": [ "keywords": [
"uni-ui", "uni-ui",
...@@ -16,11 +16,7 @@ ...@@ -16,11 +16,7 @@
"directories": { "directories": {
"example": "../../temps/example_temps" "example": "../../temps/example_temps"
}, },
"dcloudext": { "dcloudext": {
"category": [
"前端组件",
"通用组件"
],
"sale": { "sale": {
"regular": { "regular": {
"price": "0.00" "price": "0.00"
...@@ -37,7 +33,8 @@ ...@@ -37,7 +33,8 @@
"data": "无", "data": "无",
"permissions": "无" "permissions": "无"
}, },
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
}, },
"uni_modules": { "uni_modules": {
"dependencies": ["uni-scss"], "dependencies": ["uni-scss"],
...@@ -45,12 +42,14 @@ ...@@ -45,12 +42,14 @@
"platforms": { "platforms": {
"cloud": { "cloud": {
"tcb": "y", "tcb": "y",
"aliyun": "y" "aliyun": "y",
"alipay": "n"
}, },
"client": { "client": {
"App": { "App": {
"app-vue": "y", "app-vue": "y",
"app-nvue": "y" "app-nvue": "y",
"app-uvue": "y"
}, },
"H5-mobile": { "H5-mobile": {
"Safari": "y", "Safari": "y",
...@@ -70,11 +69,15 @@ ...@@ -70,11 +69,15 @@
"阿里": "y", "阿里": "y",
"百度": "y", "百度": "y",
"字节跳动": "y", "字节跳动": "y",
"QQ": "y" "QQ": "y",
"钉钉": "y",
"快手": "y",
"飞书": "y",
"京东": "y"
}, },
"快应用": { "快应用": {
"华为": "u", "华为": "y",
"联盟": "u" "联盟": "y"
}, },
"Vue": { "Vue": {
"vue2": "y", "vue2": "y",
......
## 1.2.4(2023-12-19)
- 修复 uni-tr只有一列时minWidth计算错误,列变化实时计算更新
## 1.2.3(2023-03-28)
- 修复 在vue3模式下可能会出现错误的问题
## 1.2.2(2022-11-29)
- 优化 主题样式
## 1.2.1(2022-06-06) ## 1.2.1(2022-06-06)
- 修复 微信小程序存在无使用组件的问题 - 修复 微信小程序存在无使用组件的问题
## 1.2.0(2021-11-19) ## 1.2.0(2021-11-19)
......
<template> <template>
<!-- #ifdef H5 --> <!-- #ifdef H5 -->
<td class="uni-table-td" :rowspan="rowspan" :colspan="colspan" :class="{ 'table--border': border }" :style="{ width: width + 'px', 'text-align': align }"><slot></slot></td> <td class="uni-table-td" :rowspan="rowspan" :colspan="colspan" :class="{'table--border':border}" :style="{width:width + 'px','text-align':align}">
<slot></slot>
</td>
<!-- #endif --> <!-- #endif -->
<!-- #ifndef H5 --> <!-- #ifndef H5 -->
<!-- :class="{'table--border':border}" --> <!-- :class="{'table--border':border}" -->
<view class="uni-table-td" :class="{ 'table--border': border }" :style="{ width: width + 'px', 'text-align': align }"><slot></slot></view> <view class="uni-table-td" :class="{'table--border':border}" :style="{width:width + 'px','text-align':align}">
<slot></slot>
</view>
<!-- #endif --> <!-- #endif -->
</template> </template>
<script> <script>
/** /**
* Td 单元格 * Td 单元格
* @description 表格中的标准单元格组件 * @description 表格中的标准单元格组件
* @tutorial https://ext.dcloud.net.cn/plugin?id=3270 * @tutorial https://ext.dcloud.net.cn/plugin?id=3270
* @property {Number} align = [left|center|right] 单元格对齐方式 * @property {Number} align = [left|center|right] 单元格对齐方式
*/ */
export default { export default {
name: 'uniTd', name: 'uniTd',
options: { options: {
virtualHost: true virtualHost: true
...@@ -30,11 +35,11 @@ export default { ...@@ -30,11 +35,11 @@ export default {
default: 'left' default: 'left'
}, },
rowspan: { rowspan: {
type: [Number, String], type: [Number,String],
default: 1 default: 1
}, },
colspan: { colspan: {
type: [Number, String], type: [Number,String],
default: 1 default: 1
} }
}, },
...@@ -44,8 +49,8 @@ export default { ...@@ -44,8 +49,8 @@ export default {
}; };
}, },
created() { created() {
this.root = this.getTable(); this.root = this.getTable()
this.border = this.root.border; this.border = this.root.border
}, },
methods: { methods: {
/** /**
...@@ -60,27 +65,26 @@ export default { ...@@ -60,27 +65,26 @@ export default {
parentName = parent.$options.name; parentName = parent.$options.name;
} }
return parent; return parent;
},
} }
} }
};
</script> </script>
<style lang="scss"> <style lang="scss">
$border-color: #ebeef5; $border-color:#EBEEF5;
.uni-table-td { .uni-table-td {
display: table-cell; display: table-cell;
padding: 8px 10px; padding: 8px 10px;
font-size: 12px; font-size: 14px;
border-bottom: 1px $border-color solid; border-bottom: 1px $border-color solid;
font-weight: 400; font-weight: 400;
color: #606266; color: #606266;
line-height: 23px; line-height: 23px;
box-sizing: border-box; box-sizing: border-box;
word-break: break-word; }
}
.table--border { .table--border {
border-right: 1px $border-color solid; border-right: 1px $border-color solid;
} }
</style> </style>
...@@ -112,6 +112,12 @@ ...@@ -112,6 +112,12 @@
value: 'value' value: 'value'
} }
} }
},
filterDefaultValue: {
type: [Array,String],
default () {
return ""
}
} }
}, },
computed: { computed: {
...@@ -157,7 +163,7 @@ ...@@ -157,7 +163,7 @@
enabled: true, enabled: true,
isOpened: false, isOpened: false,
dataList: [], dataList: [],
filterValue: '', filterValue: this.filterDefaultValue,
checkedValues: [], checkedValues: [],
gtValue: '', gtValue: '',
ltValue: '', ltValue: '',
...@@ -286,6 +292,8 @@ ...@@ -286,6 +292,8 @@
</script> </script>
<style lang="scss"> <style lang="scss">
$uni-primary: #1890ff !default;
.flex-r { .flex-r {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
...@@ -315,8 +323,8 @@ ...@@ -315,8 +323,8 @@
} }
.icon-select.active { .icon-select.active {
background-color: #1890ff; background-color: $uni-primary;
border-top-color: #1890ff; border-top-color: $uni-primary;
} }
.icon-search { .icon-search {
...@@ -343,11 +351,11 @@ ...@@ -343,11 +351,11 @@
} }
.icon-search.active .icon-search-0 { .icon-search.active .icon-search-0 {
border-color: #1890ff; border-color: $uni-primary;
} }
.icon-search.active .icon-search-1 { .icon-search.active .icon-search-1 {
background-color: #1890ff; background-color: $uni-primary;
} }
.icon-calendar { .icon-calendar {
...@@ -387,14 +395,14 @@ ...@@ -387,14 +395,14 @@
} }
.icon-calendar.active { .icon-calendar.active {
color: #1890ff; color: $uni-primary;
} }
.icon-calendar.active .icon-calendar-0, .icon-calendar.active .icon-calendar-0,
.icon-calendar.active .icon-calendar-1, .icon-calendar.active .icon-calendar-1,
.icon-calendar.active .icon-calendar-0:before, .icon-calendar.active .icon-calendar-0:before,
.icon-calendar.active .icon-calendar-0:after { .icon-calendar.active .icon-calendar-0:after {
background-color: #1890ff; background-color: $uni-primary;
} }
.uni-filter-dropdown { .uni-filter-dropdown {
...@@ -497,7 +505,7 @@ ...@@ -497,7 +505,7 @@
} }
.btn-submit { .btn-submit {
background-color: #1890ff; background-color: $uni-primary;
color: #ffffff; color: #ffffff;
} }
</style> </style>
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<text class="arrow down" :class="{ active: descending }" @click.stop="descendingFn"></text> <text class="arrow down" :class="{ active: descending }" @click.stop="descendingFn"></text>
</view> </view>
</view> </view>
<dropdown v-if="filterType || filterData.length" :filterData="filterData" :filterType="filterType" @change="ondropdown"></dropdown> <dropdown v-if="filterType || filterData.length" :filterDefaultValue="filterDefaultValue" :filterData="filterData" :filterType="filterType" @change="ondropdown"></dropdown>
</view> </view>
</th> </th>
<!-- #endif --> <!-- #endif -->
...@@ -19,9 +19,9 @@ ...@@ -19,9 +19,9 @@
</template> </template>
<script> <script>
// #ifdef H5 // #ifdef H5
import dropdown from './filter-dropdown.vue'; import dropdown from './filter-dropdown.vue'
// #endif // #endif
/** /**
* Th 表头 * Th 表头
* @description 表格内的表头单元格组件 * @description 表格内的表头单元格组件
...@@ -48,7 +48,7 @@ export default { ...@@ -48,7 +48,7 @@ export default {
dropdown dropdown
// #endif // #endif
}, },
emits: ['sort-change', 'filter-change'], emits:['sort-change','filter-change'],
props: { props: {
width: { width: {
type: [String, Number], type: [String, Number],
...@@ -72,12 +72,18 @@ export default { ...@@ -72,12 +72,18 @@ export default {
}, },
filterType: { filterType: {
type: String, type: String,
default: '' default: ""
}, },
filterData: { filterData: {
type: Array, type: Array,
default() { default () {
return []; return []
}
},
filterDefaultValue: {
type: [Array,String],
default () {
return ""
} }
} }
}, },
...@@ -86,124 +92,121 @@ export default { ...@@ -86,124 +92,121 @@ export default {
border: false, border: false,
ascending: false, ascending: false,
descending: false descending: false
}; }
}, },
computed: { computed: {
// 根据props中的width属性 自动匹配当前th的宽度(px) // 根据props中的width属性 自动匹配当前th的宽度(px)
customWidth() { customWidth(){
if (typeof this.width === 'number') { if(typeof this.width === 'number'){
return this.width; return this.width
} else if (typeof this.width === 'string') { } else if(typeof this.width === 'string') {
let regexHaveUnitPx = new RegExp(/^[1-9][0-9]*px$/g); let regexHaveUnitPx = new RegExp(/^[1-9][0-9]*px$/g)
let regexHaveUnitRpx = new RegExp(/^[1-9][0-9]*rpx$/g); let regexHaveUnitRpx = new RegExp(/^[1-9][0-9]*rpx$/g)
let regexHaveNotUnit = new RegExp(/^[1-9][0-9]*$/g); let regexHaveNotUnit = new RegExp(/^[1-9][0-9]*$/g)
if (this.width.match(regexHaveUnitPx) !== null) { if (this.width.match(regexHaveUnitPx) !== null) { // 携带了 px
// 携带了 px return this.width.replace('px', '')
return this.width.replace('px', ''); } else if (this.width.match(regexHaveUnitRpx) !== null) { // 携带了 rpx
} else if (this.width.match(regexHaveUnitRpx) !== null) { let numberRpx = Number(this.width.replace('rpx', ''))
// 携带了 rpx let widthCoe = uni.getSystemInfoSync().screenWidth / 750
let numberRpx = Number(this.width.replace('rpx', '')); return Math.round(numberRpx * widthCoe)
let widthCoe = uni.getSystemInfoSync().screenWidth / 750; } else if (this.width.match(regexHaveNotUnit) !== null) { // 未携带 rpx或px 的纯数字 String
return Math.round(numberRpx * widthCoe); return this.width
} else if (this.width.match(regexHaveNotUnit) !== null) { } else { // 不符合格式
// 未携带 rpx或px 的纯数字 String return ''
return this.width;
} else {
// 不符合格式
return '';
} }
} else { } else {
return ''; return ''
} }
}, },
contentAlign() { contentAlign() {
let align = 'left'; let align = 'left'
switch (this.align) { switch (this.align) {
case 'left': case 'left':
align = 'flex-start'; align = 'flex-start'
break; break
case 'center': case 'center':
align = 'center'; align = 'center'
break; break
case 'right': case 'right':
align = 'flex-end'; align = 'flex-end'
break; break
} }
return align; return align
} }
}, },
created() { created() {
this.root = this.getTable('uniTable'); this.root = this.getTable('uniTable')
this.rootTr = this.getTable('uniTr'); this.rootTr = this.getTable('uniTr')
this.rootTr.minWidthUpdate(this.customWidth ? this.customWidth : 140); this.rootTr.minWidthUpdate(this.customWidth ? this.customWidth : 140)
this.border = this.root.border; this.border = this.root.border
this.root.thChildren.push(this); this.root.thChildren.push(this)
}, },
methods: { methods: {
sort() { sort() {
if (!this.sortable) return; if (!this.sortable) return
this.clearOther(); this.clearOther()
if (!this.ascending && !this.descending) { if (!this.ascending && !this.descending) {
this.ascending = true; this.ascending = true
this.$emit('sort-change', { order: 'ascending' }); this.$emit('sort-change', { order: 'ascending' })
return; return
} }
if (this.ascending && !this.descending) { if (this.ascending && !this.descending) {
this.ascending = false; this.ascending = false
this.descending = true; this.descending = true
this.$emit('sort-change', { order: 'descending' }); this.$emit('sort-change', { order: 'descending' })
return; return
} }
if (!this.ascending && this.descending) { if (!this.ascending && this.descending) {
this.ascending = false; this.ascending = false
this.descending = false; this.descending = false
this.$emit('sort-change', { order: null }); this.$emit('sort-change', { order: null })
} }
}, },
ascendingFn() { ascendingFn() {
this.clearOther(); this.clearOther()
this.ascending = !this.ascending; this.ascending = !this.ascending
this.descending = false; this.descending = false
this.$emit('sort-change', { order: this.ascending ? 'ascending' : null }); this.$emit('sort-change', { order: this.ascending ? 'ascending' : null })
}, },
descendingFn() { descendingFn() {
this.clearOther(); this.clearOther()
this.descending = !this.descending; this.descending = !this.descending
this.ascending = false; this.ascending = false
this.$emit('sort-change', { order: this.descending ? 'descending' : null }); this.$emit('sort-change', { order: this.descending ? 'descending' : null })
}, },
clearOther() { clearOther() {
this.root.thChildren.map(item => { this.root.thChildren.map(item => {
if (item !== this) { if (item !== this) {
item.ascending = false; item.ascending = false
item.descending = false; item.descending = false
} }
return item; return item
}); })
}, },
ondropdown(e) { ondropdown(e) {
this.$emit('filter-change', e); this.$emit("filter-change", e)
}, },
/** /**
* 获取父元素实例 * 获取父元素实例
*/ */
getTable(name) { getTable(name) {
let parent = this.$parent; let parent = this.$parent
let parentName = parent.$options.name; let parentName = parent.$options.name
while (parentName !== name) { while (parentName !== name) {
parent = parent.$parent; parent = parent.$parent
if (!parent) return false; if (!parent) return false
parentName = parent.$options.name; parentName = parent.$options.name
} }
return parent; return parent
} }
} }
}; }
</script> </script>
<style lang="scss"> <style lang="scss">
$border-color: #ebeef5; $border-color: #ebeef5;
$uni-primary: #007aff !default;
.uni-table-th { .uni-table-th {
padding: 12px 10px; padding: 12px 10px;
...@@ -211,7 +214,7 @@ $border-color: #ebeef5; ...@@ -211,7 +214,7 @@ $border-color: #ebeef5;
display: table-cell; display: table-cell;
box-sizing: border-box; box-sizing: border-box;
/* #endif */ /* #endif */
font-size: 12px; font-size: 14px;
font-weight: bold; font-weight: bold;
color: #909399; color: #909399;
border-bottom: 1px $border-color solid; border-bottom: 1px $border-color solid;
...@@ -258,7 +261,7 @@ $border-color: #ebeef5; ...@@ -258,7 +261,7 @@ $border-color: #ebeef5;
} }
&.active { &.active {
::after { ::after {
background-color: #007aff; background-color: $uni-primary;
} }
} }
} }
...@@ -275,7 +278,7 @@ $border-color: #ebeef5; ...@@ -275,7 +278,7 @@ $border-color: #ebeef5;
} }
&.active { &.active {
::after { ::after {
background-color: #007aff; background-color: $uni-primary;
} }
} }
} }
......
...@@ -77,7 +77,7 @@ ...@@ -77,7 +77,7 @@
</script> </script>
<style lang="scss"> <style lang="scss">
$checked-color: #007aff; $uni-primary: #007aff !default;
$border-color: #DCDFE6; $border-color: #DCDFE6;
$disable:0.4; $disable:0.4;
...@@ -125,8 +125,8 @@ ...@@ -125,8 +125,8 @@
} }
&.checkbox--indeterminate { &.checkbox--indeterminate {
border-color: $checked-color; border-color: $uni-primary;
background-color: $checked-color; background-color: $uni-primary;
.checkbox__inner-icon { .checkbox__inner-icon {
position: absolute; position: absolute;
...@@ -147,7 +147,7 @@ ...@@ -147,7 +147,7 @@
} }
} }
&:hover{ &:hover{
border-color: $checked-color; border-color: $uni-primary;
} }
// 禁用 // 禁用
&.is-disable { &.is-disable {
...@@ -160,8 +160,8 @@ ...@@ -160,8 +160,8 @@
// 选中 // 选中
&.is-checked { &.is-checked {
border-color: $checked-color; border-color: $uni-primary;
background-color: $checked-color; background-color: $uni-primary;
.checkbox__inner-icon { .checkbox__inner-icon {
opacity: 1; opacity: 1;
......
<template> <template>
<!-- #ifdef H5 --> <!-- #ifdef H5 -->
<tr class="uni-table-tr"> <tr class="uni-table-tr">
<th v-if="selection === 'selection' && ishead" class="checkbox" :class="{ 'tr-table--border': border }"><table-checkbox :checked="checked" :indeterminate="indeterminate" :disabled="disabled" @checkboxSelected="checkboxSelected"></table-checkbox></th> <th v-if="selection === 'selection' && ishead" class="checkbox" :class="{ 'tr-table--border': border }">
<table-checkbox :checked="checked" :indeterminate="indeterminate" :disabled="disabled" @checkboxSelected="checkboxSelected"></table-checkbox>
</th>
<slot></slot> <slot></slot>
<!-- <uni-th class="th-fixed">123</uni-th> --> <!-- <uni-th class="th-fixed">123</uni-th> -->
</tr> </tr>
<!-- #endif --> <!-- #endif -->
<!-- #ifndef H5 --> <!-- #ifndef H5 -->
<view class="uni-table-tr" :class="{ disabledClass: disabledClass }"> <view class="uni-table-tr">
<view v-if="selection === 'selection'" class="checkbox" :class="{ 'tr-table--border': border }"><table-checkbox :checked="checked" :indeterminate="indeterminate" :disabled="disabled" @checkboxSelected="checkboxSelected"></table-checkbox></view> <view v-if="selection === 'selection' " class="checkbox" :class="{ 'tr-table--border': border }">
<table-checkbox :checked="checked" :indeterminate="indeterminate" :disabled="disabled" @checkboxSelected="checkboxSelected"></table-checkbox>
</view>
<slot></slot> <slot></slot>
</view> </view>
<!-- #endif --> <!-- #endif -->
</template> </template>
<script> <script>
import tableCheckbox from './table-checkbox.vue'; import tableCheckbox from './table-checkbox.vue'
/** /**
* Tr 表格行组件 * Tr 表格行组件
* @description 表格行组件 仅包含 th,td 组件 * @description 表格行组件 仅包含 th,td 组件
...@@ -25,10 +29,6 @@ export default { ...@@ -25,10 +29,6 @@ export default {
name: 'uniTr', name: 'uniTr',
components: { tableCheckbox }, components: { tableCheckbox },
props: { props: {
disabledClass: {
type: Boolean,
default: false
},
disabled: { disabled: {
type: Boolean, type: Boolean,
default: false default: false
...@@ -49,77 +49,81 @@ export default { ...@@ -49,77 +49,81 @@ export default {
widthThArr: [], widthThArr: [],
ishead: true, ishead: true,
checked: false, checked: false,
indeterminate: false indeterminate:false
}; }
}, },
created() { created() {
this.root = this.getTable(); this.root = this.getTable()
this.head = this.getTable('uniThead'); this.head = this.getTable('uniThead')
if (this.head) { if (this.head) {
this.ishead = false; this.ishead = false
this.head.init(this); this.head.init(this)
} }
this.border = this.root.border; this.border = this.root.border
this.selection = this.root.type; this.selection = this.root.type
this.root.trChildren.push(this); this.root.trChildren.push(this)
const rowData = this.root.data.find(v => v[this.root.rowKey] === this.keyValue); const rowData = this.root.data.find(v => v[this.root.rowKey] === this.keyValue)
if (rowData) { if(rowData){
this.rowData = rowData; this.rowData = rowData
} }
this.root.isNodata(); this.root.isNodata()
}, },
mounted() { mounted() {
if (this.widthThArr.length > 0) { if (this.widthThArr.length > 0) {
const selectionWidth = this.selection === 'selection' ? 50 : 0; const selectionWidth = this.selection === 'selection' ? 50 : 0
this.root.minWidth = this.widthThArr.reduce((a, b) => Number(a) + Number(b)) + selectionWidth; this.root.minWidth = Number(this.widthThArr.reduce((a, b) => Number(a) + Number(b))) + selectionWidth;
} }
}, },
// #ifndef VUE3 // #ifndef VUE3
destroyed() { destroyed() {
const index = this.root.trChildren.findIndex(i => i === this); const index = this.root.trChildren.findIndex(i => i === this)
this.root.trChildren.splice(index, 1); this.root.trChildren.splice(index, 1)
this.root.isNodata(); this.root.isNodata()
}, },
// #endif // #endif
// #ifdef VUE3 // #ifdef VUE3
unmounted() { unmounted() {
const index = this.root.trChildren.findIndex(i => i === this); const index = this.root.trChildren.findIndex(i => i === this)
this.root.trChildren.splice(index, 1); this.root.trChildren.splice(index, 1)
this.root.isNodata(); this.root.isNodata()
}, },
// #endif // #endif
methods: { methods: {
minWidthUpdate(width) { minWidthUpdate(width) {
this.widthThArr.push(width); this.widthThArr.push(width)
if (this.widthThArr.length > 0) {
const selectionWidth = this.selection === 'selection' ? 50 : 0;
this.root.minWidth = Number(this.widthThArr.reduce((a, b) => Number(a) + Number(b))) + selectionWidth;
}
}, },
// 选中 // 选中
checkboxSelected(e) { checkboxSelected(e) {
let rootData = this.root.data.find(v => v[this.root.rowKey] === this.keyValue); let rootData = this.root.data.find(v => v[this.root.rowKey] === this.keyValue)
this.checked = e.checked; this.checked = e.checked
this.root.check(rootData || this, e.checked, rootData ? this.keyValue : null); this.root.check(rootData||this, e.checked,rootData? this.keyValue:null)
}, },
change(e) { change(e) {
this.root.trChildren.forEach(item => { this.root.trChildren.forEach(item => {
if (item === this) { if (item === this) {
this.root.check(this, e.detail.value.length > 0 ? true : false); this.root.check(this, e.detail.value.length > 0 ? true : false)
} }
}); })
}, },
/** /**
* 获取父元素实例 * 获取父元素实例
*/ */
getTable(name = 'uniTable') { getTable(name = 'uniTable') {
let parent = this.$parent; let parent = this.$parent
let parentName = parent.$options.name; let parentName = parent.$options.name
while (parentName !== name) { while (parentName !== name) {
parent = parent.$parent; parent = parent.$parent
if (!parent) return false; if (!parent) return false
parentName = parent.$options.name; parentName = parent.$options.name
} }
return parent; return parent
} }
} }
}; }
</script> </script>
<style lang="scss"> <style lang="scss">
......
{ {
"id": "uni-table", "id": "uni-table",
"displayName": "uni-table 表格", "displayName": "uni-table 表格",
"version": "1.2.1", "version": "1.2.4",
"description": "表格组件,多用于展示多条结构类似的数据,如", "description": "表格组件,多用于展示多条结构类似的数据,如",
"keywords": [ "keywords": [
"uni-ui", "uni-ui",
...@@ -16,11 +16,7 @@ ...@@ -16,11 +16,7 @@
"directories": { "directories": {
"example": "../../temps/example_temps" "example": "../../temps/example_temps"
}, },
"dcloudext": { "dcloudext": {
"category": [
"前端组件",
"通用组件"
],
"sale": { "sale": {
"regular": { "regular": {
"price": "0.00" "price": "0.00"
...@@ -37,7 +33,8 @@ ...@@ -37,7 +33,8 @@
"data": "无", "data": "无",
"permissions": "无" "permissions": "无"
}, },
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
}, },
"uni_modules": { "uni_modules": {
"dependencies": ["uni-scss","uni-datetime-picker"], "dependencies": ["uni-scss","uni-datetime-picker"],
......
...@@ -349,8 +349,35 @@ const API = { ...@@ -349,8 +349,35 @@ const API = {
/** /**
* 理货记录 * 理货记录
*/ */
getTallyRecordList: API_BASE + '/supplywechatwms/getTallyRecordList' getTallyRecordList: API_BASE + '/supplywechatwms/getTallyRecordList',
/**
* 异常管理列表
*/
abnormalManageList: API_BASE + '/supplywechatwms/abnormalManageList',
/**
* 异常作废
*/
cancelAbnormal: API_BASE + '/supplywechatwms/cancelAbnormal',
/**
* 异常确认
*/
confirmAbnormal: API_BASE + '/supplywechatwms/confirmAbnormal',
/**
* 入仓号进行模糊查询
*/
getAllOrderDataByEntrustNo: API_BASE + '/supplywechatwms/getAllOrderDataByEntrustNo',
/**
* 根据订单ID获取明细
*/
getOrderDetailById: API_BASE + '/supplywechatwms/getOrderDetailById',
/**
* 新增异常
*/
addAbnormal: API_BASE + '/supplywechatwms/addAbnormal',
/**
* 获取快捷用语
*/
getQuickExpressions: API_BASE + '/supplywechatwms/getQuickExpressions'
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment