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
f094dd27
Commit
f094dd27
authored
Jan 24, 2024
by
陈桂东
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交代码
parent
13e95206
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
744 行增加
和
177 行删除
+744
-177
BgglDao.ets
common/src/main/ets/db/dao/BgglDao.ets
+6
-3
BgglModel.ets
entry/src/main/ets/model/BgglModel.ets
+45
-2
DrModel.ets
entry/src/main/ets/model/DrModel.ets
+2
-2
AddWzin.ets
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/AddWzin.ets
+1
-1
Pack.ets
entry/src/main/ets/pages/package/Pack.ets
+86
-22
PackList.ets
entry/src/main/ets/pages/package/PackList.ets
+51
-0
Pick.ets
entry/src/main/ets/pages/package/Pick.ets
+52
-33
DataSynchronism.ets
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/DataSynchronism.ets
+25
-85
BasicInfoModal.ets
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/BasicInfoModal.ets
+6
-0
DjInfoModal.ets
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/DjInfoModal.ets
+163
-24
OrderModal.ets
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/OrderModal.ets
+148
-0
PageModal.ets
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/PageModal.ets
+125
-0
sync.api.ts
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/sync.api.ts
+5
-1
PageManagement.ets
features/PageManagement/src/main/ets/pages/PageManagement.ets
+29
-4
没有找到文件。
common/src/main/ets/db/dao/BgglDao.ets
View file @
f094dd27
...
@@ -52,10 +52,13 @@ export class BgglDao extends BaseTable<Bggl> {
...
@@ -52,10 +52,13 @@ export class BgglDao extends BaseTable<Bggl> {
/**
/**
* 根据订单号查询包裹信息
* 根据订单号查询包裹信息
*/
*/
async getDdh(d
dh: string
): Promise<Bggl[]> {
async getDdh(d
ata: Partial<Bggl>
): Promise<Bggl[]> {
let wp = this.getPredicates();
let wp = this.getPredicates();
if (ddh) {
wp.equalTo('DDH', ddh);
for (const [key, value] of Object.entries(data)) {
if (value) {
wp.like(key, `%${value}%`)
}
}
}
return this.query(wp, this.getTableColumns());
return this.query(wp, this.getTableColumns());
}
}
...
...
entry/src/main/ets/model/BgglModel.ets
View file @
f094dd27
import { BgglDao, SQLiteContext, Bggl } from '@ohos/common'
import { BgglDao, SQLiteContext, Bggl } from '@ohos/common'
import { uuid } from '@ohos/common/src/main/ets/utils/util'
// 包裹管理
// 包裹管理
class BgglModel {
class BgglModel {
// 随机生成两位数
randomCoding() {
//创建26个字母数组
var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
'S',
'T', 'U', 'V', 'W', 'X', 'Y', 'Z'
];
var idvalue = '';
var n = 2; //这个值可以改变的,对应的生成多少个字母,根据自己需求所改
for (var i = 0; i < n; i++) {
idvalue += arr[Math.floor(Math.random() * 26)];
}
return idvalue;
}
// 随机四位数字
getRandomSixNum() {
let RandomSixStr = ''
for (let i = 0; i < 4; i++) {
RandomSixStr += String(Math.floor(Math.random() * 10))
}
return RandomSixStr
}
// 添加包裹
// 添加包裹
async set(data: Bggl[]) {
async set(data: Bggl[]) {
const copyData = data.map(item => {
return {
guid: item.guid || uuid(),
ddh: item.ddh || '',
xs: item.xs || 1,
fwdw: item.fwdw || '',
bgzt: '待入库',
// @ts-ignore
slr: item.ryxm || '',
sjh: item.sjh || '',
sfdc: item.sfdc || '',
jssj: item.jssj || '',
cksj: item.cksj || '',
pc: item.pc || 1,
qjm: this.randomCoding() + this.getRandomSixNum(),
sfdf: item.sfdf,
dfje: 0
}
})
await SQLiteContext.with(BgglDao).batchInsert(data)
await SQLiteContext.with(BgglDao).batchInsert(data)
}
}
// 查询包裹
// 查询包裹
async query(d
dh?: string
):Promise<Bggl[]> {
async query(d
ata: Partial<Bggl>
):Promise<Bggl[]> {
let res = await SQLiteContext.with(BgglDao).getDdh(d
dh
);
let res = await SQLiteContext.with(BgglDao).getDdh(d
ata
);
return res;
return res;
}
}
...
...
entry/src/main/ets/model/DrModel.ets
View file @
f094dd27
...
@@ -9,8 +9,8 @@ class DrModel {
...
@@ -9,8 +9,8 @@ class DrModel {
const obj = {
const obj = {
filename,
filename,
guid: uuid(),
guid: uuid(),
filetype:
null
,
filetype:
''
,
size:
null
,
size:
0
,
time: dateUtils.formatDateTime(new Date(), 'all')
time: dateUtils.formatDateTime(new Date(), 'all')
}
}
await SQLiteContext.with(DrInfoDao).insert(obj)
await SQLiteContext.with(DrInfoDao).insert(obj)
...
...
entry/src/main/ets/pages/metailmange/WzInPage/WzinDetail/AddWzin.ets
View file @
f094dd27
...
@@ -192,7 +192,7 @@ export struct AddWzin {
...
@@ -192,7 +192,7 @@ export struct AddWzin {
Column() {
Column() {
Flex({ direction: FlexDirection.Row, alignItems: ItemAlign.Center }) {
Flex({ direction: FlexDirection.Row, alignItems: ItemAlign.Center }) {
Row(){
Row()
{
if (item.required) {
if (item.required) {
Text('*').fontColor('red').margin({ right: 5 })
Text('*').fontColor('red').margin({ right: 5 })
}
}
...
...
entry/src/main/ets/pages/package/Pack.ets
View file @
f094dd27
import { BasicTable } from '../../view/BasicTable/BasicTable'
import { BasicTable } from '../../view/BasicTable/BasicTable'
import { TitleBar } from '../../view/title/TitleBar'
import { TitleBar } from '../../view/title/TitleBar'
import router from '@ohos.router'
import router from '@ohos.router'
import bgglModel from '../../model/BgglModel'
import { Bggl } from '@ohos/common/src/main/ets/entity/Bggl'
import { Logger } from '@ohos/common/src/main/ets/utils/Logger'
import { PackList } from './PackList'
interface Type {
interface Type {
type: "wait" | "unclaimed" | "received"
type: "wait" | "unclaimed" | "received"
| "all"
}
}
@Extend(Button) function CommonButtonStyle() {
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2).borderColor('#0fa983')
.borderWidth(2)
.borderColor('#0fa983')
.backgroundColor('#fff')
.backgroundColor('#fff')
.fontColor('#0fa983')
.fontColor('#0fa983')
.borderRadius(10)
.borderRadius(10)
...
@@ -28,59 +34,117 @@ interface Type {
...
@@ -28,59 +34,117 @@ interface Type {
@Component
@Component
export struct Pack {
export struct Pack {
@State type: string = ''
@State type: string = ''
@State packList: Bggl[] = []
controller: SearchController = new SearchController()
controller: SearchController = new SearchController()
@State ddh: string = ''
@State bgzt: string = ''
onPageShow() {
let params = router.getParams() as Type;
this.type = params.type
aboutToAppear(){
if(params.type == 'wait'){
let params = router.getParams() as Type;
this.bgzt = '待入库'
this.type = params.type
}
}
if(params.type == 'unclaimed'){
this.bgzt = '未领取'
}
if(params.type == 'received'){
this.bgzt = '已领取'
}
if(params.type == 'all'){
this.bgzt = ''
}
build(){
this.getPackList()
Column(){
}
Flex({direction:FlexDirection.Column}){
TitleBar({ title:"包裹信息查询" })
// 获取包裹列表
async getPackList() {
const res = await bgglModel.query({ddh: this.ddh, bgzt:this.bgzt})
Logger.info('获取到包裹数据', JSON.stringify(res))
this.packList = res
}
Row(){
@Builder renderEmpty() {
Flex({justifyContent:FlexAlign.SpaceAround,alignItems:ItemAlign.Center}) {
Flex({ justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center }) {
if(this.type == 'wait') {
Column() {
Search({ placeholder: '请输入包裹信息', controller: this.controller })
Image($r("app.media.empty")).width("42%")
Text("暂无数据").fontSize(22).fontColor("#fff").margin({ top: 5 })
}
}.height('70%')
}
build() {
Column() {
Flex({ direction: FlexDirection.Column }) {
TitleBar({ title: "包裹信息查询" })
Row() {
Flex({ justifyContent: FlexAlign.SpaceAround, alignItems: ItemAlign.Center }) {
if (this.type == 'wait') {
Search({ placeholder: '请输入订单号', controller: this.controller })
.CommonSearchStyle()
.CommonSearchStyle()
.onSubmit((value: string) => {
.onSubmit((value: string) => {
this.ddh = value
this.getPackList()
})
})
.onChange((value: string) => {
.onChange((value: string) => {
this.ddh = value
this.getPackList()
})
})
Button("接收").CommonButtonStyle()
Button("接收").CommonButtonStyle()
Button("上架").CommonButtonStyle()
Button("上架").CommonButtonStyle()
}
}
if(this.type == 'unclaimed') {
if
(this.type == 'unclaimed') {
Search({ placeholder: '请输入
包裹信息
', controller: this.controller })
Search({ placeholder: '请输入
订单号
', controller: this.controller })
.CommonSearchStyle()
.CommonSearchStyle()
.onSubmit((value: string) => {
.onSubmit((value: string) => {
this.ddh = value
this.getPackList()
})
})
.onChange((value: string) => {
.onChange((value: string) => {
this.ddh = value
this.getPackList()
})
})
Button("导出").CommonButtonStyle()
Button("导出").CommonButtonStyle()
Button("打印面单").CommonButtonStyle()
Button("打印面单").CommonButtonStyle()
}
}
if
(this.type == 'received
') {
if
(this.type == 'received' || this.type == 'all
') {
Search({ placeholder: '请输入
包裹信息
', controller: this.controller })
Search({ placeholder: '请输入
订单号
', controller: this.controller })
.CommonSearchStyle()
.CommonSearchStyle()
.width('70%')
.width('70%')
.onSubmit((value: string) => {
.onSubmit((value: string) => {
this.ddh = value
this.getPackList()
})
})
.onChange((value: string) => {
.onChange((value: string) => {
this.ddh = value
this.getPackList()
})
})
Button("导出").CommonButtonStyle()
Button("导出").CommonButtonStyle()
}
}
}
}
}.padding({top:20})
}.padding({ top: 20 })
Column() {
Column(){
if (this.packList.length == 0) {
BasicTable({dataSource:[]})
this.renderEmpty()
}.flexGrow(1)
} else {
List() {
ForEach(this.packList, (item) => {
ListItem() {
PackList({ item })
}
})
}.divider({ strokeWidth: 1, color: "#bbbbb1" }).backgroundColor('#fff')
}
}.flexGrow(1).padding(15)
}
}
}.linearGradient({
}.linearGradient({
direction: GradientDirection.RightBottom,
direction: GradientDirection.RightBottom,
...
...
entry/src/main/ets/pages/package/PackList.ets
0 → 100644
View file @
f094dd27
import { Bggl } from '@ohos/common/src/main/ets/entity/Bggl'
import { KfInfo } from '@ohos/common/src/main/ets/entity/KfInfo'
import { Logger } from '@ohos/common/src/main/ets/utils/Logger'
import kfModel from '../../model/KfModel'
@Entry
@Component
export struct PackList {
private item: Bggl
@State kfList: KfInfo[] = []
async aboutToAppear() {
const res = await kfModel.query({})
Logger.info('获取到库房名称》》', JSON.stringify(res))
this.kfList = res
}
renderKfdm(kfdm) {
if(!kfdm) {
return ''
}
const res = this.kfList.find(v => v.kfdm == kfdm)
return res ? res.kfmc : ''
}
build() {
Column() {
Row() {
Checkbox({ name: 'checkbox1', group: 'checkboxGroup' })
.onChange((value: boolean) => {
})
.margin({ right: 10, left: 10 })
Column() {
Text('订单号:' + this.item.ddh).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
Text('库房:' + this.renderKfdm(this.item.kfdm)).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
}.width('30%')
Column() {
Text('货位:' + this.item.hwh).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
Text('箱数:' + this.item.xs).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
}.width('30%').margin({ left: 10 })
Column() {
Text('批次:' + this.item.pc).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
Text('未导出' + this.item.sfdc).alignSelf(ItemAlign.Start).padding({ top: 5, bottom: 5 })
}.width('30%').margin({ left: 10 })
}
}
}
}
\ No newline at end of file
entry/src/main/ets/pages/package/Pick.ets
View file @
f094dd27
import { SQLiteContext, Logger, WzcrkmxDao, Wzcrkmx } from '@ohos/common'
import { SQLiteContext, Logger, WzcrkmxDao, Wzcrkmx, Bggl } from '@ohos/common'
import bgglModel from '../../model/BgglModel'
import wzcrkModel from '../../model/WzcrkModel'
import wzcrkModel from '../../model/WzcrkModel'
import wzcrkmxModel from '../../model/WzcrkmxModel'
import wzcrkmxModel from '../../model/WzcrkmxModel'
import { BasicTable } from '../../view/BasicTable/BasicTable'
import { BasicTable } from '../../view/BasicTable/BasicTable'
import { TitleBar } from '../../view/title/TitleBar'
import { TitleBar } from '../../view/title/TitleBar'
import { PackList } from './PackList'
@Extend(Button) function CommonButtonStyle() {
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderWidth(2)
...
@@ -19,6 +21,28 @@ import { TitleBar } from '../../view/title/TitleBar'
...
@@ -19,6 +21,28 @@ import { TitleBar } from '../../view/title/TitleBar'
export struct Pick {
export struct Pick {
controller: SearchController = new SearchController()
controller: SearchController = new SearchController()
wzcrkmxDao: WzcrkmxDao = SQLiteContext.with(WzcrkmxDao)
wzcrkmxDao: WzcrkmxDao = SQLiteContext.with(WzcrkmxDao)
@State ddh: string = ''
@State packList: Bggl[] = []
onPageShow() {
this.getPackList()
}
// 获取包裹列表
async getPackList() {
const res = await bgglModel.query({ddh: this.ddh, bgzt:'未领取'})
Logger.info('获取到包裹数据', JSON.stringify(res))
this.packList = res
}
@Builder renderEmpty() {
Flex({ justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center }) {
Column() {
Image($r("app.media.empty")).width("42%")
Text("暂无数据").fontSize(22).fontColor("#fff").margin({ top: 5 })
}
}.height('70%')
}
build() {
build() {
Column() {
Column() {
...
@@ -41,37 +65,32 @@ export struct Pick {
...
@@ -41,37 +65,32 @@ export struct Pick {
}.margin({ top: 20 })
}.margin({ top: 20 })
Column() {
Column() {
BasicTable({ dataSource: [] })
}.flexGrow(1)
Row() {
if (this.packList.length == 0) {
Flex({ justifyContent: FlexAlign.SpaceAround }) {
this.renderEmpty()
Button("打印面单").CommonButtonStyle().onClick(async () => {
} else {
List() {
const res = await wzcrkModel.query({})
ForEach(this.packList, (item) => {
const res1 = await wzcrkmxModel.query(res[0].guid)
ListItem() {
Logger.info(this, '输出更新数据>>:' + JSON.stringify(res1));
PackList({ item })
}
await wzcrkmxModel.updateWcztmxByData(res1[0].guid, {crksl: 20})
})
}.divider({ strokeWidth: 1, color: "#bbbbb1" }).backgroundColor('#fff')
const res2 = await wzcrkmxModel.query(res[0].guid)
}
Logger.info(this, '输出更新数据111>>:' + JSON.stringify(res2));
}.flexGrow(1).padding(15)
})
Button("扫码取件").CommonButtonStyle().onClick(async () => {
Row() {
let val = await this.wzcrkmxDao.update({ guid: '124', crksl: 888 } as Wzcrkmx);
Flex({ justifyContent: FlexAlign.SpaceAround,alignItems:ItemAlign.Center }) {
Logger.info(this, '输出更新数据:' + val);
Button("打印面单").CommonButtonStyle().onClick(async () => {})
})
Button("扫码取件").CommonButtonStyle().onClick(async () => {})
Button("手动取件").CommonButtonStyle().onClick(async () => {
Button("手动取件").CommonButtonStyle().onClick(async () => {})
let val = await this.wzcrkmxDao.queryAll();
}.height(80).backgroundColor('#97c6a6')
Logger.info(this, '输出查询数据:' + JSON.stringify(val));
}
})
}.linearGradient({
}.height(80).backgroundColor('#97c6a6')
direction: GradientDirection.RightBottom,
}
repeating: true,
}.linearGradient({
colors: [[0x36a3c0, 0.0], [0x97c6a6, 1.0], [0xc7d799, 2.0]]
direction: GradientDirection.RightBottom,
})
repeating: true,
}
colors: [[0x36a3c0, 0.0], [0x97c6a6, 1.0], [0xc7d799, 2.0]]
})
}
}
}}
}
\ No newline at end of file
\ No newline at end of file
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/DataSynchronism.ets
View file @
f094dd27
...
@@ -2,26 +2,14 @@ import { DividerTitle } from '../../../view/DividerTitle/DividerTitle'
...
@@ -2,26 +2,14 @@ import { DividerTitle } from '../../../view/DividerTitle/DividerTitle'
import { TitleBar } from '../../../view/title/TitleBar'
import { TitleBar } from '../../../view/title/TitleBar'
import { TipDialog } from '../../../view/TipDialog/TipDialog'
import { TipDialog } from '../../../view/TipDialog/TipDialog'
import { ListDialog } from './ListDialog'
import { ListDialog } from './ListDialog'
import { listData, IProductName } from './sync.data'
import { listData } from './sync.data'
import { getPmList, getBaseList, getDjList, getBgList, getLsqList } from './sync.api'
import { Bzhx } from '@ohos/common/src/main/ets/entity/Bzhx'
import bzhxModal from '../../../model/BzhxModel'
import kfModel from '../../../model/KfModel'
import gldwModel from '../../../model/GldwModel'
import qyModel from '../../../model/QyModel'
import hjModel from '../../../model/HjModel'
import hwModel from '../../../model/HwModel'
import promptAction from '@ohos.promptAction'
import { Logger } from '@ohos/common/src/main/ets/utils/Logger'
import { Logger } from '@ohos/common/src/main/ets/utils/Logger'
import wzcrkModel from '../../../model/WzcrkModel'
import { Bggl } from '@ohos/common/src/main/ets/entity/Bggl'
import bgglModel from '../../../model/BgglModel'
import wzdmModel from '../../../model/WzdmModel'
import drModel from '../../../model/DrModel'
import drModel from '../../../model/DrModel'
import dsRfidModel from '../../../model/DsRfidModel'
import { DrInfo } from '@ohos/common/src/main/ets/entity/DrInfo'
import { DrInfo } from '@ohos/common/src/main/ets/entity/DrInfo'
import wzcrkmxModel from '../../../model/WzcrkmxModel'
import {BasicInfoModal} from './modal/BasicInfoModal'
import {BasicInfoModal} from './modal/BasicInfoModal'
import {DjInfoModal} from './modal/DjInfoModal'
import { PageModal } from './modal/PageModal'
import { OrderModal } from './modal/OrderModal'
@Extend(Button) function CommonButtonStyle() {
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderWidth(2)
...
@@ -61,7 +49,19 @@ export struct Pmhx {
...
@@ -61,7 +49,19 @@ export struct Pmhx {
})
})
basicController: CustomDialogController = new CustomDialogController({
basicController: CustomDialogController = new CustomDialogController({
builder: BasicInfoModal({ showProgress: $showProgress,finally: () => this.showProgress = false }),
builder: BasicInfoModal({ showProgress: $showProgress,finally: () => this.showProgress = false,getDrData: this.getDrData }),
})
djController: CustomDialogController = new CustomDialogController({
builder: DjInfoModal({ showProgress: $showProgress,finally: () => this.showProgress = false }),
})
pageController: CustomDialogController = new CustomDialogController({
builder: PageModal({ showProgress: $showProgress, finally: () => this.showProgress = false }),
})
orderController: CustomDialogController = new CustomDialogController({
builder: OrderModal({ showProgress: $showProgress, finally: () => this.showProgress = false }),
})
})
onSubmit() {}
onSubmit() {}
...
@@ -72,9 +72,10 @@ export struct Pmhx {
...
@@ -72,9 +72,10 @@ export struct Pmhx {
// 获取导入数据
// 获取导入数据
async getDrData() {
async getDrData() {
this.drData = []
const res = await drModel.query()
const res = await drModel.query()
Logger.info('获取导入数据>>', JSON.stringify(res))
this.drData = res
this.drData = res
Logger.info('基础信息数据(内部网络导入)>>', JSON.stringify(res))
}
}
async handleClick(item) {
async handleClick(item) {
...
@@ -88,81 +89,20 @@ export struct Pmhx {
...
@@ -88,81 +89,20 @@ export struct Pmhx {
break;
break;
case "单据导入":
case "单据导入":
try {
if(this.djController) {
this.showProgress = true
this.djController.open()
await wzcrkModel.clear()
await wzcrkmxModel.clear()
await dsRfidModel.clear()
const { rows } = await getDjList({})
// 使用map对rows进行操作
const mappedRows = rows.map((row) => {
// 在这里执行对每个元素的操作
return {
...row,
pzzbguid: row.jhguid,
ckdwguid: row.cbdwdm,
kfdm: row.ckkfdm,
sjlx: "导入",
wczt: "未完成",
};
});
await wzcrkModel.set(mappedRows)
await drModel.set('单据信息数据(内部网络导入)')
this.getDrData()
promptAction.showToast({
message: '同步数据成功'
})
} catch (error) {
promptAction.showToast({
message: '同步数据失败'
})
} finally {
this.showProgress = false
}
}
break;
break;
case "临时区库存":
case "临时区库存":
try {
if(this.orderController) {
this.showProgress = true
this.orderController.open()
const res = await getLsqList({})
// 获取临时区库存数据
const lsqData = JSON.parse(res)
await hwModel.set(lsqData)
await drModel.set('临时区库存数据(内部网络导入)')
this.getDrData()
promptAction.showToast({
message: '同步数据成功'
})
} catch (error) {
promptAction.showToast({
message: '同步数据失败'
})
} finally {
this.showProgress = false
}
}
break;
break;
case "订单导入":
case "订单导入":
try {
if(this.pageController) {
this.showProgress = true
this.pageController.open()
await bgglModel.clear()
const res = await getBgList({})
// 获取包裹数据
const bgData = JSON.parse(res) as Bggl[]
await bgglModel.set(bgData)
await drModel.set('订单导入(内部网络导入)')
this.getDrData()
promptAction.showToast({
message: '同步数据成功'
})
} catch (error) {
promptAction.showToast({
message: '同步数据失败'
})
} finally {
this.showProgress = false
}
}
break;
break;
...
...
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/BasicInfoModal.ets
View file @
f094dd27
...
@@ -29,6 +29,7 @@ export struct BasicInfoModal {
...
@@ -29,6 +29,7 @@ export struct BasicInfoModal {
@Link showProgress: boolean
@Link showProgress: boolean
@State dwguid: string = ''
@State dwguid: string = ''
finally: () => void
finally: () => void
getDrData: () => void
async handleClick() {
async handleClick() {
if (this.dwguid == '') {
if (this.dwguid == '') {
...
@@ -76,6 +77,8 @@ export struct BasicInfoModal {
...
@@ -76,6 +77,8 @@ export struct BasicInfoModal {
await drModel.set('基础信息数据(内部网络导入)')
await drModel.set('基础信息数据(内部网络导入)')
await this.getDrData()
this.showProgress = false
this.showProgress = false
promptAction.showToast({
promptAction.showToast({
...
@@ -98,6 +101,9 @@ export struct BasicInfoModal {
...
@@ -98,6 +101,9 @@ export struct BasicInfoModal {
Text('单位代码:').width('30%')
Text('单位代码:').width('30%')
TextInput({ placeholder: "请输入单位代码", text: this.dwguid }).width('60%')
TextInput({ placeholder: "请输入单位代码", text: this.dwguid }).width('60%')
.borderRadius(6)
.borderRadius(6)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.dwguid = value)
.onChange(value => this.dwguid = value)
}.margin({ top: 10, bottom: 10 })
}.margin({ top: 10, bottom: 10 })
...
...
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/DjInfoModal.ets
View file @
f094dd27
import { DividerTitle } from '../../../../view/DividerTitle/DividerTitle'
import { DividerTitle } from '../../../../view/DividerTitle/DividerTitle'
import promptAction from '@ohos.promptAction'
import promptAction from '@ohos.promptAction'
import wzcrkModel from '../../../../model/WzcrkModel'
import wzcrkmxModel from '../../../../model/WzcrkmxModel'
import dsRfidModel from '../../../../model/DsRfidModel'
import { getDjList, getQkdzList } from '../sync.api'
import drModel from '../../../../model/DrModel'
import { KfInfo } from '@ohos/common/src/main/ets/entity/KfInfo'
import kfModel from '../../../../model/KfModel'
import { pzlxList, pzlx_dict } from '@ohos/common/src/main/ets/utils/dict'
import { Logger } from '@ohos/common/src/main/ets/utils/Logger'
@Extend(Button) function CommonButtonStyle() {
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderWidth(2)
...
@@ -14,41 +23,147 @@ import promptAction from '@ohos.promptAction'
...
@@ -14,41 +23,147 @@ import promptAction from '@ohos.promptAction'
@Observed
@Observed
class DjInfo {
class DjInfo {
dwguid: string
ck
dwguid: string
gznd: string
gznd: string
pzlx: string
pzlx: string
kfdm: string
kfdm: string
constructor(data: {
constructor(data: {
dwguid: string
ck
dwguid: string
gznd?: string
gznd?: string
pzlx: string
pzlx: string
kfdm: string
kfdm: string
}) {
}) {
this.
dwguid = data.
dwguid || ''
this.
ckdwguid = data.ck
dwguid || ''
this.gznd = data.gznd || ''
this.gznd = data.gznd || ''
this.pzlx = data.pzlx || ''
this.pzlx = data.pzlx || ''
this.kfdm = data.kfdm || ''
this.kfdm = data.kfdm || ''
}
}
}
}
@Entry
interface Options {
value: string,
id: number | string
}
@CustomDialog
@Component
@Component
export struct
Basic
InfoModal {
export struct
Dj
InfoModal {
controller: CustomDialogController
controller: CustomDialogController
//
@Link showProgress: boolean
@Link showProgress: boolean
@State dwguid: string = ''
@State dwguid: string = ''
@State form: DjInfo = new DjInfo({
dwguid:"", gznd: new Date().getFullYear() + '', pzlx:"", kfdm:
"" })
@State form: DjInfo = new DjInfo({
ckdwguid: "", gznd: new Date().getFullYear() + '', pzlx: "", kfdm:
"" })
finally: () => void
finally: () => void
@State kfOption: Options[] = []
@State pzlxOption: Options[] = []
aboutToAppear() {
this.getOptions()
}
async getOptions() {
const res = await kfModel.query({})
this.kfOption = res.map(v => {
return {
value: v.kfmc,
id: v.kfdm
}
})
this.pzlxOption = pzlxList.map(v => {
return {
value: v.text,
id: v.value
}
})
}
async handleClick() {
async handleClick() {
if (this.dwguid == '') {
if (!this.form.ckdwguid) {
promptAction.showToast({
message: '请输入单位代码'
})
return
}
if (!this.form.gznd) {
promptAction.showToast({
message: '请输入年度'
})
return
}
if (!this.form.kfdm) {
promptAction.showToast({
message: '请选择库房代码'
})
return
}
if (!this.form.pzlx) {
promptAction.showToast({
promptAction.showToast({
message: '请输入单位代码',
message: '请选择凭证类型'
bottom: 200
})
})
return
return
}
}
try {
try {
this.showProgress = true
this.controller.close()
await wzcrkModel.clear()
await wzcrkmxModel.clear()
await dsRfidModel.clear()
let rows = [] as DjInfo[]
if(this.form.pzlx == '111111PZLX42') {
rows = await getQkdzList({
...this.form,
current: 1,
pageSize: 5000,
dataType: "sj",
jzbz: "11PZZMJZBZ1",
pzlx: "111111PZLX42",
nbzt: "111111NBZT2",
pzzbFlag: "bj",
zfzt: "11PZZMZFBZ1",
})
} else {
rows = await getDjList({
...this.form,
current: 1,
pageSize: 5000,
jzbz: "11PZZMJZBZ1",
nbzt: "111111NBZT2",
pzzbFlag: "bj",
zfzt: "11PZZMZFBZ1",
})
}
// 使用map对rows进行操作
const mappedRows = rows.map((row) => {
// 在这里执行对每个元素的操作
return {
...row,
// @ts-ignore
pzzbguid: row.jhguid,
// @ts-ignore
ckdwguid: row.cbdwdm,
// @ts-ignore
kfdm: row.ckkfdm,
sjlx: "导入",
wczt: "未完成",
};
});
// @ts-ignore
await wzcrkModel.set(mappedRows)
await drModel.set('单据信息数据(内部网络导入)')
promptAction.showToast({
message: '同步单据数据成功'
})
} catch (error) {
} catch (error) {
promptAction.showToast({
promptAction.showToast({
message: '同步单据数据失败'
message: '同步单据数据失败'
...
@@ -64,35 +179,59 @@ export struct BasicInfoModal {
...
@@ -64,35 +179,59 @@ export struct BasicInfoModal {
Row() {
Row() {
Text('*').fontColor('red')
Text('*').fontColor('red')
Text('单位代码:').width('25%')
Text('单位代码:').width('25%')
TextInput({ placeholder: "请输入单位代码", text: this.form.dwguid }).width('60%')
TextInput({ placeholder: "请输入单位代码", text: this.form.ckdwguid })
.width('60%')
.borderRadius(6)
.borderRadius(6)
.onChange(value => this.form.dwguid = value)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.form.ckdwguid = value)
}.margin({ top: 10, bottom: 10 })
}.margin({ top: 10, bottom: 10 })
Row() {
Row() {
Text('*').fontColor('red')
Text('*').fontColor('red')
Text('年度:').width('25%')
Text('年度:').width('25%')
TextInput({ placeholder: "请输入年度", text: this.form.gznd }).width('60%')
TextInput({ placeholder: "请输入年度", text: this.form.gznd })
.width('60%')
.borderRadius(6)
.borderRadius(6)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.form.gznd = value)
.onChange(value => this.form.gznd = value)
}.margin({ top: 10, bottom: 10 })
}.margin({ top: 10, bottom: 10 })
Row() {
Row() {
Text('*').fontColor('red')
Text('*').fontColor('red')
Text('年度:').width('25%')
Text('凭证类型:').width('25%')
// Select(item.options)
Select(this.pzlxOption)
// .value(`请选择${item.title}`)
.value(`请选择凭证类型`)
// .width(230)
.borderWidth(1)
// .borderWidth(1)
.borderRadius(5)
// .borderRadius(5)
.width(210)
// .flexGrow(1)
.height(34)
// .borderColor($r("app.color.rank_secondary_border"))
.borderColor($r("app.color.rank_secondary_border"))
// .onSelect((index: number, value?: string) => {
.onSelect((index: number, value?: string) => {
// this.wzcrk[item.key] = item.options[index].id
this.form.pzlx = this.pzlxOption[index].id + ''
// })
})
}.margin({ top: 10, bottom: 10 })
Row() {
Text('*').fontColor('red')
Text('库房:').width('25%')
Select(this.kfOption)
.value(`请选择库房`)
.borderWidth(1)
.borderRadius(5)
.width(210)
.height(34)
.borderColor($r("app.color.rank_secondary_border"))
.onSelect((index: number, value?: string) => {
this.form.kfdm = this.kfOption[index].id + ''
})
}.margin({ top: 10, bottom: 10 })
}.margin({ top: 10, bottom: 10 })
Flex({ justifyContent: FlexAlign.SpaceAround }) {
Flex({ justifyContent: FlexAlign.SpaceAround }) {
Button('取消')
Button('取消')
.onClick(() => {
.onClick(() => {
...
...
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/OrderModal.ets
0 → 100644
View file @
f094dd27
import { DividerTitle } from '../../../../view/DividerTitle/DividerTitle'
import promptAction from '@ohos.promptAction'
import wzcrkModel from '../../../../model/WzcrkModel'
import wzcrkmxModel from '../../../../model/WzcrkmxModel'
import dsRfidModel from '../../../../model/DsRfidModel'
import { getDjList, getLsqList } from '../sync.api'
import drModel from '../../../../model/DrModel'
import { KfInfo } from '@ohos/common/src/main/ets/entity/KfInfo'
import kfModel from '../../../../model/KfModel'
import { pzlx_dict } from '@ohos/common/src/main/ets/utils/dict'
import hwModel from '../../../../model/HwModel'
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderColor('#0fa983')
.backgroundColor('#fff')
.fontColor('#0fa983')
.borderRadius(10)
.type(ButtonType.Normal)
.height(30)
.stateEffect(true)
}
@Observed
class DjInfo {
ckdwguid: string
kfdm: string
constructor(data: {
ckdwguid: string
kfdm: string
}) {
this.ckdwguid = data.ckdwguid || ''
this.kfdm = data.kfdm || ''
}
}
interface Options {
value: string,
id: number | string
}
@CustomDialog
@Component
export struct OrderModal {
controller: CustomDialogController
@Link showProgress: boolean
@State dwguid: string = ''
@State form: DjInfo = new DjInfo({ ckdwguid: "", kfdm: "" })
finally: () => void
@State kfOption: Options[] = []
aboutToAppear() {
this.getOptions()
}
async getOptions() {
const res = await kfModel.query({})
this.kfOption = res.map(v => {
return {
value: v.kfmc,
id: v.kfdm
}
})
}
async handleClick() {
if (!this.form.ckdwguid) {
promptAction.showToast({
message: '请输入单位代码'
})
return
}
if (!this.form.kfdm) {
promptAction.showToast({
message: '请选择库房代码'
})
return
}
try {
this.showProgress = true
this.controller.close()
const res = await getLsqList({})
// 获取临时区库存数据
const lsqData = JSON.parse(res)
await hwModel.set(lsqData)
await drModel.set('临时区库存数据(内部网络导入)')
promptAction.showToast({
message: '同步临时区库存数据成功'
})
} catch (error) {
promptAction.showToast({
message: '同步临时区库存数据失败'
})
} finally {
this.finally()
}
}
build() {
Column() {
DividerTitle({ title: '单据导入' }).alignSelf(ItemAlign.Start).margin({ top: 15 })
Row() {
Text('*').fontColor('red')
Text('单位代码:').width('25%')
TextInput({ placeholder: "请输入单位代码", text: this.form.ckdwguid }).width('60%')
.borderRadius(6)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.form.ckdwguid = value)
}.margin({ top: 10, bottom: 10 })
Row() {
Text('*').fontColor('red')
Text('库房:').width('25%')
Select(this.kfOption)
.value(`请选择库房`)
.borderWidth(1)
.borderRadius(5)
.width(210)
.height(34)
.borderColor($r("app.color.rank_secondary_border"))
.onSelect((index: number, value?: string) => {
this.form.kfdm = this.kfOption[index].id + ''
})
}.margin({ top: 10, bottom: 10 })
Flex({ justifyContent: FlexAlign.SpaceAround }) {
Button('取消')
.onClick(() => {
this.controller.close()
})
.CommonButtonStyle()
Button('确认')
.onClick(() => this.handleClick()).CommonButtonStyle()
}.margin({ top: 10, bottom: 10 })
}.margin({ left: 10 }).borderRadius(0)
}
}
\ No newline at end of file
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/modal/PageModal.ets
0 → 100644
View file @
f094dd27
import { DividerTitle } from '../../../../view/DividerTitle/DividerTitle'
import promptAction from '@ohos.promptAction'
import { getBgList, getDjList } from '../sync.api'
import drModel from '../../../../model/DrModel'
import bgglModel from '../../../../model/BgglModel'
import { Bggl } from '@ohos/common'
@Extend(Button) function CommonButtonStyle() {
.borderWidth(2)
.borderColor('#0fa983')
.backgroundColor('#fff')
.fontColor('#0fa983')
.borderRadius(10)
.type(ButtonType.Normal)
.height(30)
.stateEffect(true)
}
@Observed
class DjInfo {
dwguid: string
gznd: string
constructor(data: {
dwdm: string
gznd?: string
}) {
this.dwguid = data.dwdm || ''
this.gznd = data.gznd || ''
}
}
@CustomDialog
@Component
export struct PageModal {
controller: CustomDialogController
@Link showProgress: boolean
@State dwguid: string = ''
@State form: DjInfo = new DjInfo({dwdm:"", gznd: new Date().getFullYear() + ''})
finally: () => void
async handleClick() {
if (!this.form.dwguid) {
promptAction.showToast({
message: '请输入单位代码'
})
return
}
if (!this.form.gznd) {
promptAction.showToast({
message: '请输入年度'
})
return
}
try {
this.showProgress = true
this.controller.close()
await bgglModel.clear()
const res = await getBgList(this.form)
// 获取包裹数据
const bgData = JSON.parse(res) as Bggl[]
await bgglModel.set(bgData)
await drModel.set('订单导入(内部网络导入)')
promptAction.showToast({
message: '同步订单数据成功'
})
} catch (error) {
promptAction.showToast({
message: '同步订单数据失败'
})
} finally {
this.finally()
}
}
build() {
Column() {
DividerTitle({ title: '单据导入' }).alignSelf(ItemAlign.Start).margin({ top: 15 })
Row() {
Text('*').fontColor('red')
Text('单位代码:').width('25%')
TextInput({ placeholder: "请输入单位代码", text: this.form.dwguid }).width('60%')
.borderRadius(6)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.form.dwguid = value)
}.margin({ top: 10, bottom: 10 })
Row() {
Text('*').fontColor('red')
Text('年度:').width('25%')
TextInput({ placeholder: "请输入年度", text: this.form.gznd }).width('60%')
.borderRadius(6)
.borderColor('#bcc5d7')
.borderWidth(1)
.backgroundColor('#fff')
.onChange(value => this.form.gznd = value)
}.margin({ top: 10, bottom: 10 })
Flex({ justifyContent: FlexAlign.SpaceAround }) {
Button('取消')
.onClick(() => {
this.controller.close()
})
.CommonButtonStyle()
Button('确认')
.onClick(() => this.handleClick()).CommonButtonStyle()
}.margin({ top: 10, bottom: 10 })
}.margin({ left: 10 }).borderRadius(0)
}
}
\ No newline at end of file
entry/src/main/ets/pages/sub_systemMaintenance/DataSynchronism/sync.api.ts
View file @
f094dd27
...
@@ -5,7 +5,8 @@ enum Api {
...
@@ -5,7 +5,8 @@ enum Api {
baseList
=
'/api/integrate/knzy/infrastructure'
,
baseList
=
'/api/integrate/knzy/infrastructure'
,
djList
=
'/api/integrate/knzy/billOfDocument2'
,
djList
=
'/api/integrate/knzy/billOfDocument2'
,
bgList
=
'/api/integrate/knzy/enwrap'
,
bgList
=
'/api/integrate/knzy/enwrap'
,
lshList
=
'/api/integrate/knzy/intiRepertory'
lshList
=
'/api/integrate/knzy/intiRepertory'
,
Qkdz
=
'/api/integrate/knzy/billOfDocumentQkdz2'
}
}
// 获取品名信息
// 获取品名信息
...
@@ -17,6 +18,9 @@ export const getBaseList = (data) => defHttp.post({url: Api.baseList, data})
...
@@ -17,6 +18,9 @@ export const getBaseList = (data) => defHttp.post({url: Api.baseList, data})
// 获取单据信息
// 获取单据信息
export
const
getDjList
=
(
data
)
=>
defHttp
.
post
({
url
:
Api
.
djList
,
data
})
export
const
getDjList
=
(
data
)
=>
defHttp
.
post
({
url
:
Api
.
djList
,
data
})
// 获取清库对账单查询
export
const
getQkdzList
=
(
data
)
=>
defHttp
.
post
({
url
:
Api
.
Qkdz
,
data
})
// 获取包裹
// 获取包裹
export
const
getBgList
=
(
data
)
=>
defHttp
.
post
({
url
:
Api
.
bgList
,
data
})
export
const
getBgList
=
(
data
)
=>
defHttp
.
post
({
url
:
Api
.
bgList
,
data
})
...
...
features/PageManagement/src/main/ets/pages/PageManagement.ets
View file @
f094dd27
import router from '@ohos.router'
import router from '@ohos.router'
import {
import {
StatusBarManager
StatusBarManager,
SQLiteContext,
BgglDao,
Logger
} from '@ohos/common';
} from '@ohos/common';
@Entry
@Entry
@Component
@Component
...
@@ -9,6 +12,7 @@ export struct PageManagement {
...
@@ -9,6 +12,7 @@ export struct PageManagement {
private controller: TabsController = new TabsController()
private controller: TabsController = new TabsController()
searchController: SearchController = new SearchController()
searchController: SearchController = new SearchController()
@Builder TabBuilder(index: number, name: string) {
@Builder TabBuilder(index: number, name: string) {
Column() {
Column() {
Text(name)
Text(name)
...
@@ -23,6 +27,26 @@ export struct PageManagement {
...
@@ -23,6 +27,26 @@ export struct PageManagement {
}.width('100%')
}.width('100%')
}
}
onPageShow(){
this.getPackList()
}
// 获取包裹列表
async getPackList(ddh?: string) {
let wp = SQLiteContext.with(BgglDao).getPredicates()
if(ddh) {
wp.equalTo('DDH', ddh)
}
wp.equalTo('WCZT','未完成')
const res = await SQLiteContext.with(BgglDao).queryAll(wp)
const res1 = await SQLiteContext.with(BgglDao).queryAll()
Logger.info('包裹列表>>', JSON.stringify(res))
Logger.info('包裹列表1111>>', JSON.stringify(res1))
}
build() {
build() {
Column() {
Column() {
Flex({ direction: FlexDirection.Column }) {
Flex({ direction: FlexDirection.Column }) {
...
@@ -35,8 +59,10 @@ export struct PageManagement {
...
@@ -35,8 +59,10 @@ export struct PageManagement {
.width('80%')
.width('80%')
.margin({ top: 14 })
.margin({ top: 14 })
.onSubmit((value: string) => {
.onSubmit((value: string) => {
this.getPackList(value)
})
})
.onChange((value: string) => {
.onChange((value: string) => {
// this.getPackList(value)
})
})
}.backgroundColor("#0fa983").width('100%').height(70)
}.backgroundColor("#0fa983").width('100%').height(70)
...
@@ -62,7 +88,7 @@ export struct PageManagement {
...
@@ -62,7 +88,7 @@ export struct PageManagement {
}
}
}.width("45%").backgroundColor('#f8fdfc').justifyContent(FlexAlign.Center).onClick(() => {
}.width("45%").backgroundColor('#f8fdfc').justifyContent(FlexAlign.Center).onClick(() => {
router.pushUrl({ url: "pages/package/Pack", params: {
router.pushUrl({ url: "pages/package/Pack", params: {
type: "
received
"
type: "
all
"
} })
} })
})
})
}
}
...
@@ -74,7 +100,6 @@ export struct PageManagement {
...
@@ -74,7 +100,6 @@ export struct PageManagement {
Image($r('app.media.express')).width(60)
Image($r('app.media.express')).width(60)
Text("暂无最新上架订单信息").margin({ top: 15 })
Text("暂无最新上架订单信息").margin({ top: 15 })
}
}
}.tabBar(this.TabBuilder(0, '最新上架'))
}.tabBar(this.TabBuilder(0, '最新上架'))
TabContent() {
TabContent() {
...
@@ -100,7 +125,7 @@ export struct PageManagement {
...
@@ -100,7 +125,7 @@ export struct PageManagement {
}
}
}.width('50%').justifyContent(FlexAlign.Center).onClick(() => {
}.width('50%').justifyContent(FlexAlign.Center).onClick(() => {
router.pushUrl({ url: "pages/package/Pack", params: {
router.pushUrl({ url: "pages/package/Pack", params: {
type: "
unclaimed
"
type: "
all
"
} })
} })
}).border({
}).border({
width: { left: '0lpx', right: '2lpx', top: '0lpx', bottom: '0lpx' },
width: { left: '0lpx', right: '2lpx', top: '0lpx', bottom: '0lpx' },
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论