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
c6b98d6d
Commit
c6b98d6d
authored
Jan 23, 2024
by
huangqy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
出库列表的功能实现
parent
69e75a13
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
235 行增加
和
31 行删除
+235
-31
WzcrkDao.ets
common/src/main/ets/db/dao/WzcrkDao.ets
+12
-12
WzInPage.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzInPage.ets
+1
-2
WzOutPage.ets
entry/src/main/ets/pages/metailmange/WzOutPage/WzOutPage.ets
+221
-16
MaterialManagement.ets
features/MaterialManagement/src/main/ets/components/MaterialManagement.ets
+1
-1
没有找到文件。
common/src/main/ets/db/dao/WzcrkDao.ets
View file @
c6b98d6d
...
@@ -124,19 +124,19 @@ export class WzcrkDao extends BaseTable<Wzcrk> {
...
@@ -124,19 +124,19 @@ export class WzcrkDao extends BaseTable<Wzcrk> {
async getWzcrk(data: Partial<Wzcrk>): Promise<Wzcrk[]> {
async getWzcrk(data: Partial<Wzcrk>): Promise<Wzcrk[]> {
let wp = this.getPredicates();
let wp = this.getPredicates();
// if (pzh) {
if (data.pzh) {
// wp.equalTo('PZH', pzh)
wp.like('PZH', '%' + data.pzh + '%')
// }
}
// if (wczt) {
if (data.wczt) {
// wp.equalTo('WCZT', wczt)
wp.equalTo('WCZT', data.wczt)
// }
}
// wp.equalTo('CRKLX', crklx)
if (data.pzlx) {
// wp.orderByAsc('PZH');
wp.equalTo('PZLX', data.pzlx)
for (const [key, value] of Object.entries(data)) {
}
if (value) {
if (data.sjlx) {
wp.equalTo(key, value)
wp.equalTo('SJLX', data.sjlx)
}
}
}
wp.orderByAsc('PZH');
return this.query(wp, this.getTableColumns());
return this.query(wp, this.getTableColumns());
}
}
...
...
entry/src/main/ets/pages/metailmange/WzInPage/WzInPage.ets
View file @
c6b98d6d
...
@@ -132,8 +132,7 @@ export struct WzInPage {
...
@@ -132,8 +132,7 @@ export struct WzInPage {
try{
try{
this.checkedList.forEach(async (element)=>{
this.checkedList.forEach(async (element)=>{
let num = await wzcrkModel.updateWzcrkWczt(element, (this.radioChecked == undefined || this.radioChecked ? '已完成' : '未完成'))
let num = await wzcrkModel.updateWzcrkWczt(element, (this.radioChecked == undefined || this.radioChecked ? '已完成' : '未完成'))
if(num){
if(num) {
Logger.info("删除的数据是:" + JSON.stringify(this.dataSource))
this.dataSource.splice(this.dataSource.findIndex(i => i.guid == element), 1)
this.dataSource.splice(this.dataSource.findIndex(i => i.guid == element), 1)
}
}
})
})
...
...
entry/src/main/ets/pages/metailmange/WzOutPage/WzOutPage.ets
View file @
c6b98d6d
...
@@ -4,6 +4,12 @@ import wzcrkModel from '../../../model/WzcrkModel';
...
@@ -4,6 +4,12 @@ import wzcrkModel from '../../../model/WzcrkModel';
import { Logger } from '@ohos/common';
import { Logger } from '@ohos/common';
import { WzClass } from '../Common/Wzcrk.data';
import { WzClass } from '../Common/Wzcrk.data';
import { WzList } from '../Common/WzcrkList';
import { WzList } from '../Common/WzcrkList';
import promptAction from '@ohos.promptAction';
import { SetStatusDialog } from '../../../view/SetStatusDialog/SetStatusDialog';
import { dateUtils } from '@ohos/common/src/main/ets/utils/util';
import ViewdrdcModel from '../../../model/ViewdrdcModel';
import { importData } from '../Common/Wzcrk.api';
import { ExportOrderDialog } from '../../../view/ExportOrderDialog/ExportOrderDialog';
@Extend(Button) function bottomBtnSty() {
@Extend(Button) function bottomBtnSty() {
.borderWidth(1)
.borderWidth(1)
...
@@ -35,6 +41,8 @@ export struct WzOutPage {
...
@@ -35,6 +41,8 @@ export struct WzOutPage {
}
}
private controller: TabsController = new TabsController()
private controller: TabsController = new TabsController()
private searchcontroller: SearchController = new SearchController()
private searchcontroller: SearchController = new SearchController()
@State defaultSelectValue: Array<SelectOption> = [{ value: "未完成" }, { value: "已完成" }]
@State selectValue: Array<SelectOption> = [{ value: "未完成" }, { value: "已完成" }, { value: "完成已绑定" }]
itemClick() {
itemClick() {
router.pushUrl({url:'pages/order_detail/PzInOutDetailPage'})
router.pushUrl({url:'pages/order_detail/PzInOutDetailPage'})
...
@@ -46,7 +54,8 @@ export struct WzOutPage {
...
@@ -46,7 +54,8 @@ export struct WzOutPage {
async getWzcrkList(qzh?: number, wczt?: string) {
async getWzcrkList(qzh?: number, wczt?: string) {
this.dataSource = []
this.dataSource = []
const res = await wzcrkModel.query({ pzlx: "17",
const res = await wzcrkModel.query({
pzlx: "17",
pzh: Number(this.searchData.pzh),
pzh: Number(this.searchData.pzh),
wczt: this.searchData.wczt,
wczt: this.searchData.wczt,
sjlx: this.currentIndex === 0 ? "导入" : "临时发物" })
sjlx: this.currentIndex === 0 ? "导入" : "临时发物" })
...
@@ -56,6 +65,151 @@ export struct WzOutPage {
...
@@ -56,6 +65,151 @@ export struct WzOutPage {
Logger.info('数量是' + JSON.stringify(this.dataSource))
Logger.info('数量是' + JSON.stringify(this.dataSource))
}
}
@Builder container() {
Column() {
Row() {
Flex({ justifyContent: FlexAlign.SpaceBetween }) {
Text('完成').margin({ left: 20 })
Radio({ value: 'Radio1', group: 'radioGroup' })
.checked(true)
.onChange((isChecked: boolean) => {
this.radioChecked = isChecked
}).margin({ right: 20 })
}
}.padding({ top: 10, bottom: 10 })
Divider().strokeWidth(1).color('rgb(242,242,242)')
Row() {
Flex({ justifyContent: FlexAlign.SpaceBetween }) {
Text('未完成').margin({ left: 20 })
Radio({ value: 'Radio2', group: 'radioGroup' })
.onChange((isChecked: boolean) => {
}).margin({ right: 20 })
}
}.padding({ top: 10, bottom: 10 })
Divider().strokeWidth(1).color('rgb(242,242,242)')
}
}
@Builder exportContainer() {
Column() {
Text('请选择导出单据模式')
}.height(40)
}
dialogController: CustomDialogController = new CustomDialogController({
builder: SetStatusDialog({
cancel: this.onCancel,
confirm: this.onSubmit,
checkedList: $checkedList,
dataSource: $dataSource,
container: this.container
}),
autoCancel: true,
alignment: DialogAlignment.Bottom,
customStyle: true
})
onCancel() {
console.info('------取消------')
}
onSubmit() {
try{
this.checkedList.forEach(async (element)=>{
let num = await wzcrkModel.updateWzcrkWczt(element, (this.radioChecked == undefined || this.radioChecked ? '已完成' : '未完成'))
if(num) {
this.dataSource.splice(this.dataSource.findIndex(i => i.guid == element), 1)
}
})
}catch(e){
}finally{
this.checkedList = []
}
}
exportDialogController: CustomDialogController = new CustomDialogController({
builder: ExportOrderDialog({
cancel: this.onExportCancel,
confirm: this.onExportSubmit,
checkedList: $checkedList,
dataSource: $dataSource,
container: this.exportContainer
}),
autoCancel: true,
alignment: DialogAlignment.Bottom,
customStyle: true
})
onExportCancel() {
}
onExportSubmit() {
this.checkedList.forEach(async element => {
let res = await ViewdrdcModel.queryExport({guid: element, wczt: '已完成', pzlx: '14'})
const jhguidArr = res.map((item) => item.guid)
if (jhguidArr && jhguidArr.length > 0) {
const date = dateUtils.formatDateTime(new Date(), 'before')
const newArr = [...new Set(jhguidArr)]
const exportData = newArr.map((item) => {
let newObj = {}
let ItemData = []
res.forEach((Item) => {
if (item == Item.guid) {
ItemData.push({
jhmxguid: Item.jhmxguid,
hwh: Item.hwh,
pmdmcode: Item.pmdmcode,
wzdm: Item.wzdm,
pzsl: Item.pzsl || 0,
sjsl: Item.crksl || 0
})
}
})
const [filterData] = res.filter((fItem) => fItem
.guid == item)
if (filterData) {
newObj = {
cbdwdm: filterData.ckdwguid,
ckkfdm: filterData.kfdm,
...filterData,
crksl: ItemData.map(i => i.sjsl).reduce((a, b) => {
return a + b
},0),
scjid: "863576927543400,863576927543400",
cjmc: "普华",
imei: "863576927543400,863576927543400",
model: "ax6737_65_n",
vendor: "alps",
dcsj: date,
pzmx: ItemData
}
}
return newObj
})
const exportForm = {
pzzbJson: exportData,
crklx: '11111CRKLX2',
gznd: '2023',
jsdwguid: 1,
}
await importData(exportForm)
}
})
promptAction.showDialog({
title: '提示',
message: '入库作业单据已同步至业务系统,请以保管员身份登录业务系统,在菜单“作业项目--物资入库”里刷新查看。',
buttons: [{
text: '已知晓',
color: '#0fa983',
}],
})
}
@Builder TabBuilder(index: number, name: string) {
@Builder TabBuilder(index: number, name: string) {
Column() {
Column() {
Text(name)
Text(name)
...
@@ -83,12 +237,12 @@ export struct WzOutPage {
...
@@ -83,12 +237,12 @@ export struct WzOutPage {
@Builder bottomButtons() {
@Builder bottomButtons() {
Row() {
Row() {
Flex({ justifyContent: FlexAlign.SpaceEvenly, alignItems: ItemAlign.Center }) {
Flex({ justifyContent: FlexAlign.SpaceEvenly, alignItems: ItemAlign.Center }) {
Button("临时
发
物")
Button("临时
收
物")
.visibility(this.currentIndex === 1 ? Visibility.Visible
:
Visibility.None)
.visibility(this.currentIndex === 1 ? Visibility.Visible
:
Visibility.None)
.bottomBtnSty()
.bottomBtnSty()
.onClick(
() => {
.onClick(() => {
router.pushUrl({
router.pushUrl({
url: "pages/metailmange/AddTemporary
Out
Page",
url: "pages/metailmange/AddTemporary
In
Page",
})
})
})
})
.fontColor("#0fa983")
.fontColor("#0fa983")
...
@@ -96,6 +250,15 @@ export struct WzOutPage {
...
@@ -96,6 +250,15 @@ export struct WzOutPage {
Button("设置状态")
Button("设置状态")
.bottomBtnSty()
.bottomBtnSty()
.onClick(() => {
.onClick(() => {
if (this.checkedList.length == 0) {
promptAction.showToast({
message: '请至少选择一条单据'
})
} else {
// if (this.dialogController != undefined) {
// this.dialogController.open()
// }
}
})
})
.fontColor("#0fa983")
.fontColor("#0fa983")
.fontSize("14vp")
.fontSize("14vp")
...
@@ -113,37 +276,78 @@ export struct WzOutPage {
...
@@ -113,37 +276,78 @@ export struct WzOutPage {
.visibility(this.currentIndex === 0 ? Visibility.Visible : Visibility.None)
.visibility(this.currentIndex === 0 ? Visibility.Visible : Visibility.None)
.bottomBtnSty()
.bottomBtnSty()
.onClick(() => {
.onClick(() => {
}).fontColor("#0fa983") .fontSize("14vp")
if (this.checkedList.length == 0) {
promptAction.showToast({
message: '请至少选择一条单据'
})
} else if (this.dataSource.filter(i => i.wczt == '未完成').length > 0) {
promptAction.showToast({
message: '请选择已完成的单据'
})
} else {
// if (this.exportDialogController != undefined) {
// this.exportDialogController.open()
// }
}
}).fontColor("#0fa983").fontSize("14vp")
.fontColor("#0fa983")
.fontSize("14vp")
Button("全选")
Button("全选")
.bottomBtnSty().fontColor("#0fa983") .fontSize("14vp")
.bottomBtnSty().fontColor("#0fa983").fontSize("14vp")
.onClick(() => {
this.checkedList = this.dataSource.map((item) => item.guid)
})
Button("清空选择")
Button("清空选择")
.bottomBtnSty()
.bottomBtnSty()
.onClick(() =>{
.onClick(() =>
{
this.checkedList = []
}).fontColor("#0fa983")
.fontSize("14vp")
}).fontColor("#0fa983").fontSize("14vp")
}
}
}.height(80)
}.height(80)
}
}
build(){
build(){
Column() {
Column() {
Flex({direction:FlexDirection.Column}){
Flex({direction:FlexDirection.Column}){
TitleBar({ title:"物资出库" })
TitleBar({ title:"物资出库" })
Row(){
Row(){
Flex({ justifyContent: FlexAlign.SpaceBetween, alignItems: ItemAlign.Center }){
Flex({ justifyContent: FlexAlign.SpaceBetween, alignItems: ItemAlign.Center })
{
Search({ placeholder: '请输入凭证号',controller: this.searchcontroller })
Search({ placeholder: '请输入凭证号',
controller: this.searchcontroller })
.height(40)
.height(40)
.backgroundColor('#F5F5F5')
.backgroundColor('#F5F5F5')
.placeholderColor(Color.Grey)
.placeholderColor(Color.Grey)
.borderRadius(5)
.textAlign(TextAlign.Center)
.textAlign(TextAlign.Center)
.placeholderFont({ size: 14, weight: 400 })
.placeholderFont({ size: 14, weight: 400 })
.textFont({ size: 14, weight: 400 })
.textFont({ size: 14, weight: 400 })
.width('
10
0%')
.width('
6
0%')
.onSubmit((value: string) => {
.onSubmit((value: string) => {
})
})
.onChange((value: string) => {
.onChange((value: string) => {
this.searchData.pzh = value
this.getWzcrkList()
})
})
}.height(40)
.borderRadius(5)
Select(this.currentIndex === 1 ? this.selectValue : this.defaultSelectValue)
.value('未完成')
.selected(0)
.borderWidth(1)
.borderRadius(6)
.height(42)
.margin({ left: 10 })
.borderColor("#454545")
.onSelect(async (index: number, value?: string) => {
if (value == this.searchData.wczt) {
} else {
this.searchData.wczt = value
this.getWzcrkList()
}
})
.width(120)
.padding({
right: 15
})
}
}.width("100%")
}.width("100%")
.padding('15vp')
.padding('15vp')
Tabs({ barPosition: BarPosition.Start, controller: this.controller }) {
Tabs({ barPosition: BarPosition.Start, controller: this.controller }) {
...
@@ -160,7 +364,8 @@ export struct WzOutPage {
...
@@ -160,7 +364,8 @@ export struct WzOutPage {
.onChange((index: number) => {
.onChange((index: number) => {
this.currentIndex = index
this.currentIndex = index
})
})
// 列表
// 列表
// 列表
Column() {
Column() {
...
...
features/MaterialManagement/src/main/ets/components/MaterialManagement.ets
View file @
c6b98d6d
...
@@ -86,7 +86,7 @@ export struct MaterialManagement {
...
@@ -86,7 +86,7 @@ export struct MaterialManagement {
break;
break;
case "out":
case "out":
router.pushUrl({
router.pushUrl({
url: "pages/metailmange/WzOutPage",
url: "pages/metailmange/WzOutPage
/WzOutPage
",
})
})
break;
break;
case "exchange":
case "exchange":
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论