Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jump_hm_warehouse
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
毛勇泽
jump_hm_warehouse
Commits
a2a8d316
Commit
a2a8d316
authored
Jan 20, 2024
by
陈桂东
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit
parent
ed6baa89
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
434 行增加
和
13 行删除
+434
-13
index.ets
common/index.ets
+2
-2
WzcrkModel.ets
entry/src/main/ets/model/WzcrkModel.ets
+28
-1
WzInList.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzInList.ets
+5
-7
WzInPage.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzInPage.ets
+5
-1
Wzin.data.ets
entry/src/main/ets/pages/metailmange/WzInPage/Wzin.data.ets
+58
-2
PzInfo.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/PzInfo.ets
+61
-0
WzInfo.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzInfo.ets
+118
-0
WzList.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzList.ets
+49
-0
WzinDetail.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzinDetail.ets
+107
-0
PzInOutDetailPage.ets
entry/src/main/ets/pages/order_detail/PzInOutDetailPage.ets
+0
-0
main_pages.json
entry/src/main/resources/base/profile/main_pages.json
+1
-0
没有找到文件。
common/index.ets
View file @
a2a8d316
...
...
@@ -32,4 +32,4 @@ export {Wzcrk} from './src/main/ets/entity/Wzcrk';
export {Wzcrkmx} from './src/main/ets/entity/Wzcrkmx';
export {DsRfid} from './src/main/ets/entity/DsRfid';
export {DsRfidDao} from './src/main/ets/db/dao/DsRfidDao';
export {pzlx_dict} from './src/main/ets/utils/dict';
\ No newline at end of file
export {pzlx_dict,szlx_dict,new_zmlx_dict} from './src/main/ets/utils/dict';
\ No newline at end of file
entry/src/main/ets/model/WzcrkModel.ets
View file @
a2a8d316
import { WzcrkmxDao, WzcrkDao, Wzcrk, Wzcrkmx, SQLiteContext } from '@ohos/common'
import { uuid } from '@ohos/common/src/main/ets/utils/util';
import wzcrkmxModel from './WzcrkmxModel';
// 物资出库入库
...
...
@@ -7,8 +8,34 @@ class WzcrkModel {
async set(data: Wzcrk[]) {
for (let index = 0; index < data.length; index++) {
const uid = uuid();
const wzcrk = data[index];
const wzcrkmx = data[index].jhmx;
// 获取子单数量总和赋给主单
// @ts-ignore
const pzsl = data[index].jhmx.map(v =>Number(v.pmsl)).reduce((a,b) => a+b, 0)
const crksl = data[index].jhmx.map(v =>Number(v.crksl)).reduce((a,b) => a+b, 0)
wzcrk.guid = uid
wzcrk.pzsl = pzsl
wzcrk.crksl = crksl
const wzcrkmx = data[index].jhmx.map((v =>{
return {
...v,
guid: uuid(),
wzcrkguid: uid,
gznd: wzcrk.gznd,
// @ts-ignore
pzsl: v.pmsl,
// @ts-ignore
pzmxguid: v.jhmxguid
}
}));
await SQLiteContext.with(WzcrkDao).insert(wzcrk)
await wzcrkmxModel.set(wzcrkmx)
}
...
...
entry/src/main/ets/pages/metailmange/WzInPage/WzInList.ets
View file @
a2a8d316
import { WzinClass,renderPzlx } from './Wzin.data'
@Component
export struct WzInList {
@ObjectLink item: WzinClass
...
...
@@ -32,7 +31,7 @@ export struct WzInList {
Text("数量: ")
Text(this.item.crksl + '').fontColor('#ff3d43')
Text('/').fontColor('#ff3d43')
Text(this.item.pzsl + '').fontColor('#ff
4aff3d
')
Text(this.item.pzsl + '').fontColor('#ff
3d43
')
}
else {
Text("数量: ")
...
...
@@ -45,13 +44,12 @@ export struct WzInList {
}.width("30%").padding({ top: 8, bottom: 8 })
Row() {
if(this.item.wczt == '1') {
Text("状态: ")
Text( "完成").fontColor('#ff3d43')
Text("状态:")
if(this.item.wczt != '未完成') {
Text( "
未
完成").fontColor('#ff3d43')
}
else {
Text("状态:")
Text("未完成").fontColor('#28bf1d')
Text("完成").fontColor('#28bf1d')
}
}
}.margin({ top: 10 }).border({ width: { bottom: '1lpx' }, color: "#717171" })
...
...
entry/src/main/ets/pages/metailmange/WzInPage/WzInPage.ets
View file @
a2a8d316
...
...
@@ -223,7 +223,11 @@ export struct WzInPage {
ForEach(this.dataSource, (item) => {
ListItem() {
WzInList({ item, checkedList: $checkedList }).width('100%').backgroundColor('#fff')
}
}.onClick(() => {
router.pushUrl({url:'pages/metailmange/WzInPage/WzinDetail/WzinDetail',params:{
wzcrk:item
}},)
})
})
}.padding(18)
}
...
...
entry/src/main/ets/pages/metailmange/WzInPage/Wzin.data.ets
View file @
a2a8d316
import { pzlx_dict, szlx_dict,zmlx_dict } from '@ohos/common'
import { pzlx_dict, szlx_dict,
new_
zmlx_dict } from '@ohos/common'
@Observed
export class WzinClass {
guid?: string
...
...
@@ -160,6 +160,61 @@ export class WzinClass {
}
}
// 物资明细
@Observed
export class WzmxClass {
guid?: string
/**
* 工作年度
*/
gznd: string
/**
* 品名代码
*/
pmdmcode: string
/**
* 凭证数量
*/
pzsl: number
/**
* 出入库数量
*/
crksl: number
/**
* 关联出入库GUID
*/
wzcrkguid: string
/**
* 货位号
*/
hwh: string
/**
*
*/
pzmxguid: string
constructor(data: {
guid?: string,
gznd: string,
pmdmcode: string,
pzsl: number,
crksl: number,
wzcrkguid: string,
hwh: string,
pzmxguid: string
}) {
this.guid = data.guid;
this.gznd = data.gznd;
this.pmdmcode = data.pmdmcode;
this.pzsl = data.pzsl;
this.crksl = data.crksl;
this.wzcrkguid = data.wzcrkguid;
this.hwh = data.hwh;
this.pzmxguid = data.pzmxguid;
}
}
// 凭证类型
export function renderPzlx(pzlx) {
return pzlx_dict.find(v => v.value == pzlx).text
...
...
@@ -170,5 +225,5 @@ export function renderSzlx(szlx) {
}
// 账目类型
export function renderZmlx(zmlx) {
return zmlx_dict.find(v => v.value == zmlx).text
return
new_
zmlx_dict.find(v => v.value == zmlx).text
}
\ No newline at end of file
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/PzInfo.ets
0 → 100644
View file @
a2a8d316
import { Wzcrk } from '@ohos/common/src/main/ets/entity/Wzcrk'
import { renderPzlx, renderSzlx, renderZmlx } from '../Wzin.data'
@Component
// 物资信息
export struct PzInfo {
arr = [{ title: "凭证类型", key: 'pzlx', enabled: false },
{ title: "凭证号", key: 'pzh', enabled: false },
{ title: "库房", key: '', enabled: true },
{ title: "收支类型", key: 'pzszlx', enabled: false },
{ title: "运单号", key: 'ydh', enabled: true },
{ title: "发物管理单位", key: 'fwgldwdm', enabled: false },
{ title: "收物管理单位", key: 'swgldwdm', enabled: false },
{ title: "备注", key: '', enabled: true }
]
private wzcrk: Wzcrk
handleText(key: string): string {
switch (key) {
case 'pzlx':
return renderPzlx(this.wzcrk.pzlx)
case 'pzszlx':
return renderSzlx(this.wzcrk.pzszlx)
case 'zmlx':
return renderZmlx(this.wzcrk.zmlx)
case '':
return ''
default:
return String(this.wzcrk[key])
}
}
build(){
Column(){
ForEach(this.arr,(item) => {
Flex({ direction: FlexDirection.Row, alignItems: ItemAlign.Center }) {
Text(item.title)
.fontSize(14)
.width("30%")
.height(40)
.fontColor($r("app.color.item_color_black"))
TextInput({ text: this.handleText(item.key) })
.enterKeyType(EnterKeyType.Search)
.borderColor("#454545")
.borderRadius(5)
.width("70%")
.height(40)
.padding(10)
.backgroundColor($r("app.color.disabledColor"))
.enabled(item.enabled)
}.padding("10vp")
})
}.backgroundColor('#fff')
}
}
\ No newline at end of file
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzInfo.ets
0 → 100644
View file @
a2a8d316
import router from '@ohos.router';
import { Wzcrkmx } from '@ohos/common/src/main/ets/entity/Wzcrkmx';
import { WzmxClass } from '../Wzin.data';
import { WzList } from './WzList';
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderColor('#0fa983')
.backgroundColor('#97c6a6')
.fontColor('#fff')
.borderRadius(5)
.type(ButtonType.Normal)
.stateEffect(true)
}
@Component
// 物资信息
export struct WzInfo {
private searchcontroller: SearchController = new SearchController()
private wzmx: WzmxClass[]
build() {
Column() {
Flex({ direction: FlexDirection.Column }) {
Column() {
Flex({ justifyContent: FlexAlign.SpaceEvenly, alignItems: ItemAlign.Center }) {
Row() {
Divider()
.vertical(true)
.height(14)
.strokeWidth(3)
.color('#19ac88')
.opacity(0.6)
.margin({ left: 8, right: 8 })
Text("单位/库房信息")
.fontWeight(FontWeight.Medium)
.fontSize(14)
.fontColor($r("app.color.item_color_black"))
}
.width("35%")
Text("浙江钧普科技股份有有限公司1号库房")
.fontWeight(FontWeight.Medium)
.fontSize(21)
.fontColor($r("app.color.title_background"))
.width("60%")
.textAlign(TextAlign.Start)
.padding({ bottom: 20, top: 20 })
}.width("100%")
}.padding({ bottom: 20, top: 20 })
.borderRadius(5)
.width("100%")
.backgroundColor("#fff")
Flex({ direction: FlexDirection.Column }) {
Flex({ justifyContent: FlexAlign.SpaceBetween, alignItems: ItemAlign.Center }) {
Row() {
Divider()
.vertical(true)
.height(14)
.strokeWidth(3)
.color('#19ac88')
.opacity(0.6)
.margin({ left: 8, right: 8 })
Text("物资列表")
.fontWeight(FontWeight.Medium)
.fontSize(14)
.fontColor($r("app.color.item_color_black"))
}
}.padding({ left: 2, right: 10 })
.width("100%")
Row() {
Flex({ justifyContent: FlexAlign.SpaceBetween, alignItems: ItemAlign.Center }) {
Search({ placeholder: '请输入品名名称', controller: this.searchcontroller })
.height(40)
.backgroundColor('#F5F5F5')
.placeholderColor(Color.Grey)
.textAlign(TextAlign.Center)
.placeholderFont({ size: 14, weight: 400 })
.textFont({ size: 14, weight: 400 })
.width('75%')
.onSubmit((value: string) => {
})
.onChange((value: string) => {
})
.margin({ left: 10 })
.borderRadius(5)
Button("查看状态").CommonButtonStyle().width("25%").margin({ left: 5, right: 5 }).onClick(() => {
router.pushUrl({ url: 'pages/metailmange/WzStatus' })
})
}.width("100%")
}.padding({ top: 10, bottom: 10 }).width("100%")
Column() {
List(){
ForEach(this.wzmx,(item) => {
ListItem(){
WzList({wzmx: item})
}
})
}
}.flexGrow(1)
}
.padding({ bottom: 20, top: 20 })
.borderRadius(15)
.margin({ top: 20 })
.width("100%")
.backgroundColor("#fff")
}
.width("100%")
.height("100%")
}
}
}
\ No newline at end of file
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzList.ets
0 → 100644
View file @
a2a8d316
import { WzmxClass } from '../Wzin.data'
@Component
export struct WzList {
@ObjectLink wzmx: WzmxClass
build() {
Column() {
Flex({ justifyContent: FlexAlign.SpaceBetween }) {
Column() {
Text("冬季防寒靴100000").padding({ top: 5, bottom: 5 })
Row() {
Text("号型: ")
Text("1003")
}.alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
Row() {
Text("货位号: ")
Text(this.wzmx.hwh)
}.alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
}.margin({ left: 15 })
Column() {
Row() {
Text("总数: ")
Text(this.wzmx.crksl + '')
}.alignSelf(ItemAlign.End).padding({ top: 5, bottom: 5 })
Row() {
Counter() {
Text(this.wzmx.crksl + '')
}
.width(120)
.onInc(() => {
this.wzmx.crksl = this.wzmx.crksl + 1
})
.onDec(() => {
this.wzmx.crksl = this.wzmx.crksl - 1
})
}.alignSelf(ItemAlign.End)
Row() {
Image($r('app.media.trash')).width(35)
}.alignSelf(ItemAlign.End)
}.margin({ right: 20 })
}.margin({ top: 10 }).border({ width: { bottom: '1lpx' }, color: "#717171" })
}
}
}
\ No newline at end of file
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/WzinDetail.ets
0 → 100644
View file @
a2a8d316
import { TitleBar } from '../../../../view/title/TitleBar'
import router from '@ohos.router';
import { Logger } from '@ohos/common/src/main/ets/utils/Logger';
import { Wzcrk } from '@ohos/common/src/main/ets/entity/Wzcrk';
import {WzInfo} from './WzInfo'
import {PzInfo} from './PzInfo'
import wzcrkmxModel from '../../../../model/WzcrkmxModel';
import { Wzcrkmx } from '@ohos/common/src/main/ets/entity/Wzcrkmx';
import { WzmxClass } from '../Wzin.data';
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderColor('#0fa983')
.backgroundColor('#97c6a6')
.fontColor('#fff')
.borderRadius(5)
.type(ButtonType.Normal)
.stateEffect(true)
}
interface params {
wzcrk: Wzcrk
}
/*入库详情*/
@Entry
@Component
struct PzInOutDetailPage{
@State fontColor: string = '#0FA983'
@State selectedFontColor: string = '#fff'
@State currentIndex: number = 0
@State wzcrk: Wzcrk = null // 物资出入库单据信息
@State wzmx: WzmxClass[] = [] // 物资出入库明细
private controller: TabsController = new TabsController()
aboutToAppear(){
const params = router.getParams() as params
this.wzcrk = params.wzcrk
Logger.info('接收到出入库信息>>', JSON.stringify(params.wzcrk))
this.getDetail()
}
// 获取凭证信息
async getDetail() {
const res = await wzcrkmxModel.query(this.wzcrk.guid)
for (let index = 0; index < res.length; index++) {
const element = res[index];
this.wzmx.push(new WzmxClass(element))
}
Logger.info('接收到出入库物资明细信息>>', JSON.stringify(res))
}
@Builder TabBuilder(index: number, name: string) {
Column() {
Text(name)
.fontColor(this.currentIndex === index ? this.selectedFontColor : this.fontColor)
.fontSize(21)
.lineHeight(36)
} .width('100%')
.height(45)
.border({ width: 2, color: 'rgb(15, 169, 131)' })
.borderRadius(3)
.backgroundColor(this.currentIndex === index ? this.fontColor : '#00000000')
}
@Builder VoucherRow() {
}
build(){
Column() {
Flex({ direction: FlexDirection.Column }) {
TitleBar({ title: "凭证详情"})
Tabs({ barPosition: BarPosition.Start, controller: this.controller }) {
TabContent() {
Column(){
PzInfo({wzcrk: this.wzcrk})
}.width("100%")
}.tabBar(this.TabBuilder(0, '凭证信息'))
TabContent() {
Column(){
WzInfo({wzmx: this.wzmx})
}.width("100%")
}.tabBar(this.TabBuilder(1, '物资信息'))
}
.margin({left:15,right:15,top:15})
.onChange((index: number) => {
this.currentIndex = index
})
Row() {
Flex({ justifyContent: FlexAlign.SpaceEvenly, alignItems: ItemAlign.Center }) {
Button("射频扫码").CommonButtonStyle().width("50%").onClick(()=>{
router.pushUrl({url:'pages/metailmange/UHFScanPage'})
})
Button("保存").CommonButtonStyle().width("50%")
}
}.margin({left:10,right:10}).height(80)
}.width("100%")
}.linearGradient({
direction: GradientDirection.Right, // 渐变方向
repeating: true, // 渐变颜色是否重复
colors: [[0x36a3c0, 0.0], [0x97c6a6, 1], [0xc7d799, 0.0]] // 数组末尾元素占比小于1时满足重复着色效果
})
}
}
\ No newline at end of file
entry/src/main/ets/pages/order_detail/PzInOutDetailPage.ets
View file @
a2a8d316
差异被折叠。
点击展开。
entry/src/main/resources/base/profile/main_pages.json
View file @
a2a8d316
...
...
@@ -10,6 +10,7 @@
"pages/metailmange/WzConversionPage"
,
"pages/metailmange/WzInvPage"
,
"pages/metailmange/WzInPage/WzInPage"
,
"pages/metailmange/WzInPage/WzinDetail/WzinDetail"
,
"pages/metailmange/WzPositionPage"
,
"pages/metailmange/WzReversePage"
,
"pages/metailmange/AddConversionPage"
,
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论