diff --git a/miniprogram/app.json b/miniprogram/app.json
index bb4f4d0..4045648 100644
--- a/miniprogram/app.json
+++ b/miniprogram/app.json
@@ -8,7 +8,13 @@
"pages/produce/processManageDetail/processManageDetail",
"pages/orders/ordersList/ordersList",
"pages/orders/orderSort/orderSort",
- "pages/orders/ordersList/orderPayment/orderPayment"
+ "pages/orders/ordersList/orderPayment/orderPayment",
+ "pages/purchase/buyOrder/buyOrder",
+ "pages/purchase/buyInOrder/buyInOrder",
+ "pages/finance/outcome/outcome",
+ "pages/finance/income/income",
+ "pages/finance/giro/giro",
+ "pages/finance/flow/flow"
],
"window": {
"navigationBarTextStyle": "black",
diff --git a/miniprogram/app.wxss b/miniprogram/app.wxss
index 26c1fe1..2337e05 100644
--- a/miniprogram/app.wxss
+++ b/miniprogram/app.wxss
@@ -17,3 +17,8 @@ view.t-popup__close {
.t-input__icon--prefix {
display: flex;
}
+
+view.t-cell__title-text {
+ white-space: nowrap;
+ flex-shrink: 0;
+}
diff --git a/miniprogram/assets/icons/支出单.svg b/miniprogram/assets/icons/支出单.svg
new file mode 100644
index 0000000..0bf7cfe
--- /dev/null
+++ b/miniprogram/assets/icons/支出单.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/miniprogram/assets/icons/收入单.svg b/miniprogram/assets/icons/收入单.svg
new file mode 100644
index 0000000..78cb814
--- /dev/null
+++ b/miniprogram/assets/icons/收入单.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/miniprogram/assets/icons/资金明细.svg b/miniprogram/assets/icons/资金明细.svg
new file mode 100644
index 0000000..233d120
--- /dev/null
+++ b/miniprogram/assets/icons/资金明细.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/miniprogram/assets/icons/转账单.svg b/miniprogram/assets/icons/转账单.svg
new file mode 100644
index 0000000..bbae012
--- /dev/null
+++ b/miniprogram/assets/icons/转账单.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/miniprogram/pages/components/card-plugin/card-plugin.wxss b/miniprogram/pages/components/card-plugin/card-plugin.wxss
index e1148e5..203d58c 100644
--- a/miniprogram/pages/components/card-plugin/card-plugin.wxss
+++ b/miniprogram/pages/components/card-plugin/card-plugin.wxss
@@ -9,14 +9,14 @@
display: none;
}
-.footer>view {
+.footer > view {
border-top: 1rpx solid #ddd;
padding: 16rpx 0 0 24rpx;
display: flex;
width: 100%;
}
-.footer>view:empty {
+.footer > view:empty {
display: none;
}
diff --git a/miniprogram/pages/components/search-input/search-input.ts b/miniprogram/pages/components/search-input/search-input.ts
index a9eccd4..c79b7e5 100644
--- a/miniprogram/pages/components/search-input/search-input.ts
+++ b/miniprogram/pages/components/search-input/search-input.ts
@@ -6,6 +6,7 @@ Component({
properties: {
label: null,
placeholder: null,
+ value: null,
},
/**
diff --git a/miniprogram/pages/components/search-input/search-input.wxml b/miniprogram/pages/components/search-input/search-input.wxml
index 72386be..7f48ac1 100644
--- a/miniprogram/pages/components/search-input/search-input.wxml
+++ b/miniprogram/pages/components/search-input/search-input.wxml
@@ -1,2 +1,2 @@
\ No newline at end of file
+ bind:clear="onClear" clearable value="{{value || ''}}" />
\ No newline at end of file
diff --git a/miniprogram/pages/finance/flow/flow.json b/miniprogram/pages/finance/flow/flow.json
new file mode 100644
index 0000000..325ac66
--- /dev/null
+++ b/miniprogram/pages/finance/flow/flow.json
@@ -0,0 +1,15 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "total-bar-plugin": "/pages/components/total-bar-plugin/total-bar-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input"
+ },
+ "navigationBarTitleText": "资金明细"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/finance/flow/flow.ts b/miniprogram/pages/finance/flow/flow.ts
new file mode 100644
index 0000000..d3602ee
--- /dev/null
+++ b/miniprogram/pages/finance/flow/flow.ts
@@ -0,0 +1,171 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, head_type: 5 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ states: [
+ { value: '', label: '全部' },
+ { value: '1', label: '未审核' },
+ { value: '2', label: '已审核' },
+ ],
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+ if (temp.order_step && temp.order_step.length) {
+ temp.order_step = temp.order_step.join(',');
+ } else {
+ delete temp.order_step;
+ }
+
+ if (temp.process_state && temp.process_state.length) {
+ temp.process_state = temp.process_state.join(',');
+ } else {
+ delete temp.process_state;
+ }
+
+ post('ErpAccount/flow', temp).then((res: any) => {
+ const list = toArray(res.data);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.count),
+ list: list,
+ });
+ });
+ },
+
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpFinance/del', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/finance/flow/flow.wxml b/miniprogram/pages/finance/flow/flow.wxml
new file mode 100644
index 0000000..816e197
--- /dev/null
+++ b/miniprogram/pages/finance/flow/flow.wxml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.rel_bill_no }}
+
+
+
+
+
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/finance/flow/flow.wxss b/miniprogram/pages/finance/flow/flow.wxss
new file mode 100644
index 0000000..b119efb
--- /dev/null
+++ b/miniprogram/pages/finance/flow/flow.wxss
@@ -0,0 +1 @@
+/* pages/finance/flow/flow.wxss */
\ No newline at end of file
diff --git a/miniprogram/pages/finance/giro/giro.json b/miniprogram/pages/finance/giro/giro.json
new file mode 100644
index 0000000..cf22ce8
--- /dev/null
+++ b/miniprogram/pages/finance/giro/giro.json
@@ -0,0 +1,15 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "total-bar-plugin": "/pages/components/total-bar-plugin/total-bar-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input"
+ },
+ "navigationBarTitleText": "转账单"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/finance/giro/giro.ts b/miniprogram/pages/finance/giro/giro.ts
new file mode 100644
index 0000000..494b5fc
--- /dev/null
+++ b/miniprogram/pages/finance/giro/giro.ts
@@ -0,0 +1,171 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, head_type: 5 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ states: [
+ { value: '', label: '全部' },
+ { value: '1', label: '未审核' },
+ { value: '2', label: '已审核' },
+ ],
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+ if (temp.order_step && temp.order_step.length) {
+ temp.order_step = temp.order_step.join(',');
+ } else {
+ delete temp.order_step;
+ }
+
+ if (temp.process_state && temp.process_state.length) {
+ temp.process_state = temp.process_state.join(',');
+ } else {
+ delete temp.process_state;
+ }
+
+ post('ErpFinance/list', temp).then((res: any) => {
+ const list = toArray(res.data?.list);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.data?.count),
+ list: list,
+ });
+ });
+ },
+
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpFinance/del', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/finance/giro/giro.wxml b/miniprogram/pages/finance/giro/giro.wxml
new file mode 100644
index 0000000..ff2c876
--- /dev/null
+++ b/miniprogram/pages/finance/giro/giro.wxml
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bill_no }}
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/finance/giro/giro.wxss b/miniprogram/pages/finance/giro/giro.wxss
new file mode 100644
index 0000000..ded56ca
--- /dev/null
+++ b/miniprogram/pages/finance/giro/giro.wxss
@@ -0,0 +1 @@
+/* pages/finance/giro/giro.wxss */
\ No newline at end of file
diff --git a/miniprogram/pages/finance/income/income.json b/miniprogram/pages/finance/income/income.json
new file mode 100644
index 0000000..63c3538
--- /dev/null
+++ b/miniprogram/pages/finance/income/income.json
@@ -0,0 +1,15 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "total-bar-plugin": "/pages/components/total-bar-plugin/total-bar-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input"
+ },
+ "navigationBarTitleText": "收入单"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/finance/income/income.ts b/miniprogram/pages/finance/income/income.ts
new file mode 100644
index 0000000..a2f4ed9
--- /dev/null
+++ b/miniprogram/pages/finance/income/income.ts
@@ -0,0 +1,171 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, head_type: 1 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ states: [
+ { value: '', label: '全部' },
+ { value: '1', label: '未审核' },
+ { value: '2', label: '已审核' },
+ ],
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+ if (temp.order_step && temp.order_step.length) {
+ temp.order_step = temp.order_step.join(',');
+ } else {
+ delete temp.order_step;
+ }
+
+ if (temp.process_state && temp.process_state.length) {
+ temp.process_state = temp.process_state.join(',');
+ } else {
+ delete temp.process_state;
+ }
+
+ post('ErpFinance/list', temp).then((res: any) => {
+ const list = toArray(res.data?.list);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.data?.count),
+ list: list,
+ });
+ });
+ },
+
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpFinance/del', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/finance/income/income.wxml b/miniprogram/pages/finance/income/income.wxml
new file mode 100644
index 0000000..9bac301
--- /dev/null
+++ b/miniprogram/pages/finance/income/income.wxml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bill_no }}
+
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/finance/income/income.wxss b/miniprogram/pages/finance/income/income.wxss
new file mode 100644
index 0000000..e69de29
diff --git a/miniprogram/pages/finance/outcome/income.wxss b/miniprogram/pages/finance/outcome/income.wxss
new file mode 100644
index 0000000..e69de29
diff --git a/miniprogram/pages/finance/outcome/outcome.json b/miniprogram/pages/finance/outcome/outcome.json
new file mode 100644
index 0000000..f586c84
--- /dev/null
+++ b/miniprogram/pages/finance/outcome/outcome.json
@@ -0,0 +1,15 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "total-bar-plugin": "/pages/components/total-bar-plugin/total-bar-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input"
+ },
+ "navigationBarTitleText": "支出单"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/finance/outcome/outcome.ts b/miniprogram/pages/finance/outcome/outcome.ts
new file mode 100644
index 0000000..138e889
--- /dev/null
+++ b/miniprogram/pages/finance/outcome/outcome.ts
@@ -0,0 +1,171 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, head_type: 2 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ states: [
+ { value: '', label: '全部' },
+ { value: '1', label: '未审核' },
+ { value: '2', label: '已审核' },
+ ],
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+ if (temp.order_step && temp.order_step.length) {
+ temp.order_step = temp.order_step.join(',');
+ } else {
+ delete temp.order_step;
+ }
+
+ if (temp.process_state && temp.process_state.length) {
+ temp.process_state = temp.process_state.join(',');
+ } else {
+ delete temp.process_state;
+ }
+
+ post('ErpFinance/list', temp).then((res: any) => {
+ const list = toArray(res.data?.list);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.data?.count),
+ list: list,
+ });
+ });
+ },
+
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpFinance/del', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/finance/outcome/outcome.wxml b/miniprogram/pages/finance/outcome/outcome.wxml
new file mode 100644
index 0000000..28f64c3
--- /dev/null
+++ b/miniprogram/pages/finance/outcome/outcome.wxml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bill_no }}
+
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/finance/outcome/outcome.wxss b/miniprogram/pages/finance/outcome/outcome.wxss
new file mode 100644
index 0000000..b1c577e
--- /dev/null
+++ b/miniprogram/pages/finance/outcome/outcome.wxss
@@ -0,0 +1 @@
+/* pages/finance/outcome/outcome.wxss */
\ No newline at end of file
diff --git a/miniprogram/pages/orders/ordersList/orderPayment/orderPayment.ts b/miniprogram/pages/orders/ordersList/orderPayment/orderPayment.ts
index 4da1895..a7e310e 100644
--- a/miniprogram/pages/orders/ordersList/orderPayment/orderPayment.ts
+++ b/miniprogram/pages/orders/ordersList/orderPayment/orderPayment.ts
@@ -99,7 +99,7 @@ Page({
/**
* 生命周期函数--监听页面加载
*/
- onLoad(options) {
+ onLoad(_options) {
// console.log(options);
this.setData({ loading: true });
diff --git a/miniprogram/pages/orders/ordersList/ordersList.json b/miniprogram/pages/orders/ordersList/ordersList.json
index e5a0937..4e76ca1 100644
--- a/miniprogram/pages/orders/ordersList/ordersList.json
+++ b/miniprogram/pages/orders/ordersList/ordersList.json
@@ -3,18 +3,13 @@
"search-popup": "/pages/components/search-popup/search-popup",
"card-plugin": "/pages/components/card-plugin/card-plugin",
"card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin",
"date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
"sort-plugin": "/pages/components/sort-plugin/sort-plugin",
"count-plugin": "/pages/components/count-plugin/count-plugin",
"total-bar-plugin": "/pages/components/total-bar-plugin/total-bar-plugin",
- "t-input": "tdesign-miniprogram/input/input",
"pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
- "search-input": "/pages/components/search-input/search-input",
- "t-cell": "tdesign-miniprogram/cell/cell",
- "t-checkbox": "tdesign-miniprogram/checkbox/checkbox",
- "t-checkbox-group": "tdesign-miniprogram/checkbox-group/checkbox-group",
- "t-radio": "tdesign-miniprogram/radio/radio",
- "t-radio-group": "tdesign-miniprogram/radio-group/radio-group"
+ "search-input": "/pages/components/search-input/search-input"
},
"navigationBarTitleText": "销售订单"
}
\ No newline at end of file
diff --git a/miniprogram/pages/orders/ordersList/ordersList.ts b/miniprogram/pages/orders/ordersList/ordersList.ts
index 19d4d29..400050a 100644
--- a/miniprogram/pages/orders/ordersList/ordersList.ts
+++ b/miniprogram/pages/orders/ordersList/ordersList.ts
@@ -65,7 +65,8 @@ Page({
this.getOrderStep();
},
searchChange(e: any) {
- this.data.params.order_no = e.detail.value;
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
this.setData({ params: this.data.params });
},
searchChange2(e: any) {
@@ -76,17 +77,11 @@ Page({
} else {
delete this.data.params[key];
}
- },
- onOrderStepChange(e: any) {
- this.data.params.order_step = e.detail.value;
this.setData({ params: this.data.params });
},
- onProcessStateChange(e: any) {
- this.data.params.process_state = e.detail.value;
- this.setData({ params: this.data.params });
- },
- onPayedStateChange(e: any) {
- this.data.params.payed_state = e.detail.value;
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
this.setData({ params: this.data.params });
},
datePickerConfirm(e: any) {
@@ -106,25 +101,25 @@ Page({
this.setData({ params: this.data.params });
this.getList(1);
},
- tabChange(e: any) {
- const state = getDataSet(e).key;
- this.data.params.state = state;
- this.getList();
- },
paginationChange(e: any) {
this.getList(e.detail.curr_page);
},
getOrderStep() {
post('OrderStep/list').then((res: any) => {
- this.setData({ orderStep: toArray(res.data) });
+ this.setData({
+ orderStep: toArray(res.data).map((el) => ({
+ label: el.order_step_name,
+ value: el.order_step_id,
+ })),
+ });
});
},
getList(curr: number = 1) {
this.data.params.curr_page = curr;
this.setData({ params: this.data.params });
- const temp = JSON.parse(JSON.stringify(this.data.params));
+ const temp = cloneLite(this.data.params);
if (temp.order_step && temp.order_step.length) {
- temp.order_step = JSON.stringify(temp.order_step);
+ temp.order_step = temp.order_step.join(',');
} else {
delete temp.order_step;
}
@@ -175,7 +170,7 @@ Page({
/**
* 生命周期函数--监听页面加载
*/
- onLoad(options) {},
+ onLoad(_options) {},
/**
* 生命周期函数--监听页面初次渲染完成
diff --git a/miniprogram/pages/orders/ordersList/ordersList.wxml b/miniprogram/pages/orders/ordersList/ordersList.wxml
index f984780..ef92871 100644
--- a/miniprogram/pages/orders/ordersList/ordersList.wxml
+++ b/miniprogram/pages/orders/ordersList/ordersList.wxml
@@ -1,47 +1,31 @@
+ bind:reset="searchReset" value="{{params.order_no}}" data-key="order_no">
-
-
-
-
-
-
-
-
-
-
-
- {{item.order_step_name}}
-
-
-
-
-
-
-
-
- {{item.label}}
-
-
-
-
-
-
-
-
- {{item.label}}
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/miniprogram/pages/purchase/buyInOrder/buyInOrder.json b/miniprogram/pages/purchase/buyInOrder/buyInOrder.json
new file mode 100644
index 0000000..546e864
--- /dev/null
+++ b/miniprogram/pages/purchase/buyInOrder/buyInOrder.json
@@ -0,0 +1,14 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin"
+ },
+ "navigationBarTitleText": "采购入库"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/purchase/buyInOrder/buyInOrder.ts b/miniprogram/pages/purchase/buyInOrder/buyInOrder.ts
new file mode 100644
index 0000000..70cef50
--- /dev/null
+++ b/miniprogram/pages/purchase/buyInOrder/buyInOrder.ts
@@ -0,0 +1,161 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, head_type: 3 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ payState: [
+ { value: '', label: '全部' },
+ { value: 1, label: '未结算' },
+ { value: 2, label: '部分结算' },
+ { value: 3, label: '完成结算' },
+ { value: 4, label: '无需结算' },
+ ],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+
+ post('ErpDepot/depotHeadList', temp).then((res: any) => {
+ const list = toArray(res.data);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.count),
+ list: list,
+ });
+ });
+ },
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpDepot/depotHeadDel', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/purchase/buyInOrder/buyInOrder.wxml b/miniprogram/pages/purchase/buyInOrder/buyInOrder.wxml
new file mode 100644
index 0000000..2fc89bb
--- /dev/null
+++ b/miniprogram/pages/purchase/buyInOrder/buyInOrder.wxml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bill_no }}
+
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/purchase/buyInOrder/buyInOrder.wxss b/miniprogram/pages/purchase/buyInOrder/buyInOrder.wxss
new file mode 100644
index 0000000..e69de29
diff --git a/miniprogram/pages/purchase/buyOrder/buyOrder.json b/miniprogram/pages/purchase/buyOrder/buyOrder.json
new file mode 100644
index 0000000..6525b7a
--- /dev/null
+++ b/miniprogram/pages/purchase/buyOrder/buyOrder.json
@@ -0,0 +1,14 @@
+{
+ "usingComponents": {
+ "search-popup": "/pages/components/search-popup/search-popup",
+ "card-plugin": "/pages/components/card-plugin/card-plugin",
+ "card-item-plugin": "/pages/components/card-item-plugin/card-item-plugin",
+ "date-picker-plugin": "/pages/components/date-picker-plugin/date-picker-plugin",
+ "sort-plugin": "/pages/components/sort-plugin/sort-plugin",
+ "count-plugin": "/pages/components/count-plugin/count-plugin",
+ "pagination-plugin": "/pages/components/pagination-plugin/pagination-plugin",
+ "search-input": "/pages/components/search-input/search-input",
+ "option-cell-plugin": "/pages/components/option-cell-plugin/option-cell-plugin"
+ },
+ "navigationBarTitleText": "采购订单"
+}
\ No newline at end of file
diff --git a/miniprogram/pages/purchase/buyOrder/buyOrder.ts b/miniprogram/pages/purchase/buyOrder/buyOrder.ts
new file mode 100644
index 0000000..5a9b13e
--- /dev/null
+++ b/miniprogram/pages/purchase/buyOrder/buyOrder.ts
@@ -0,0 +1,164 @@
+import { loginStatus, post } from '@/utils/https';
+import {
+ cloneLite,
+ getAuthInfo,
+ getDataSet,
+ showModal,
+ sleep,
+ toArray,
+ toastSuccess,
+ toNumber,
+} from '@/utils/util';
+
+const defaultParams = { curr_page: 1, page_count: 20, states: [1, 4], head_type: 2 };
+
+Page({
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ params: cloneLite(defaultParams) as any,
+ list: [] as any[],
+ count: 0,
+ states: [
+ { value: 1, label: '未入库' },
+ { value: 4, label: '部分入库' },
+ { value: 3, label: '完成入库' },
+ ],
+ sort: [{ label: '创建日期', value: 'create_date' }],
+ },
+ handleLogin(e: any) {
+ this.setData({ isLogin: e.detail });
+ if (e.detail) {
+ this.init();
+ }
+ },
+ init() {
+ this.setData({ authInfo: getAuthInfo() });
+ this.getList();
+ },
+ searchChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchChange2(e: any) {
+ const key = getDataSet(e).key;
+ const val = `${e.detail.value || ''}`.trim();
+ if (val) {
+ this.data.params[key] = val;
+ } else {
+ delete this.data.params[key];
+ }
+ this.setData({ params: this.data.params });
+ },
+ onOptionChange(e: any) {
+ const key = getDataSet(e).key;
+ this.data.params[key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ datePickerConfirm(e: any) {
+ const data = getDataSet(e);
+ this.data.params[data.key] = e.detail.value;
+ this.setData({ params: this.data.params });
+ },
+ searchOk() {
+ this.getList(1);
+ },
+ searchReset() {
+ this.data.params = cloneLite(defaultParams);
+ this.getList(1);
+ },
+ onSort(e: any) {
+ this.data.params.order = e.detail.value;
+ this.setData({ params: this.data.params });
+ this.getList(1);
+ },
+ paginationChange(e: any) {
+ this.getList(e.detail.curr_page);
+ },
+ getList(curr: number = 1) {
+ this.data.params.curr_page = curr;
+ this.setData({ params: this.data.params });
+ const temp = cloneLite(this.data.params);
+ if (temp.states && temp.states.length) {
+ temp.states = temp.states.join(',');
+ } else {
+ delete temp.states;
+ }
+
+ post('ErpDepot/depotHeadList', temp).then((res: any) => {
+ const list = toArray(res.data);
+ if (list.length == 0 && this.data.params.curr_page > 1) {
+ this.getList(this.data.params.curr_page - 1);
+ }
+ this.setData({
+ count: toNumber(res.count),
+ list: list,
+ });
+ });
+ },
+ onOrderDel(e: any) {
+ const data = getDataSet(e);
+ const index = data.index;
+ const item = this.data.list[index];
+ showModal({ content: `确认删除 ${item.bill_no} 订单?` }).then(() => {
+ post('ErpDepot/depotHeadDel', { head_id: item.head_id }).then(() => {
+ toastSuccess('删除成功');
+ sleep(() => {
+ this.getList();
+ }, 1000);
+ });
+ });
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(_options) {},
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {},
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({ loading: true });
+ loginStatus()
+ .then(() => {
+ this.setData({ isLogin: true, loading: false });
+ this.init();
+ })
+ .catch((err) => {
+ this.setData({ isLogin: false, loading: false });
+ console.log('调用登录状态请求失败', err);
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {},
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {},
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {},
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {},
+});
diff --git a/miniprogram/pages/purchase/buyOrder/buyOrder.wxml b/miniprogram/pages/purchase/buyOrder/buyOrder.wxml
new file mode 100644
index 0000000..d37546b
--- /dev/null
+++ b/miniprogram/pages/purchase/buyOrder/buyOrder.wxml
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.bill_no }}
+
+
+
+
+
+ {{item.creator_name}}
+ ({{item.creator_nick_name}})
+
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
\ No newline at end of file
diff --git a/miniprogram/pages/purchase/buyOrder/buyOrder.wxss b/miniprogram/pages/purchase/buyOrder/buyOrder.wxss
new file mode 100644
index 0000000..e69de29
diff --git a/miniprogram/utils/menuConfig.ts b/miniprogram/utils/menuConfig.ts
index 165f149..faaca8d 100644
--- a/miniprogram/utils/menuConfig.ts
+++ b/miniprogram/utils/menuConfig.ts
@@ -40,4 +40,48 @@ export const menuConfig = [
},
],
},
+ {
+ title: '采购管理',
+ icon: 'cart-add',
+ iconColor: iconColor,
+ children: [
+ {
+ title: '采购订单',
+ url: '/pages/purchase/buyOrder/buyOrder',
+ auth: 'SF_ERP_PURCHASE_ORDER_VIEW',
+ },
+ {
+ title: '采购入库',
+ url: '/pages/purchase/buyInOrder/buyInOrder',
+ auth: 'SF_ERP_PURCHASE_STORE_VIEW',
+ },
+ ],
+ },
+ {
+ title: '财务管理',
+ icon: 'currency-exchange',
+ iconColor: iconColor,
+ children: [
+ {
+ title: '收入单',
+ url: '/pages/finance/income/income',
+ auth: 'SF_FINANCE_INCOME_VIEW',
+ },
+ {
+ title: '支出单',
+ url: '/pages/finance/outcome/outcome',
+ auth: 'SF_FINANCE_OUTCOME_VIEW',
+ },
+ {
+ title: '转账单',
+ url: '/pages/finance/giro/giro',
+ auth: 'SF_FINANCE_TRANSFER_VIEW',
+ },
+ {
+ title: '资金明细',
+ url: '/pages/finance/flow/flow',
+ auth: 'SF_FINANCE_FLOW_VIEW',
+ },
+ ],
+ },
];