|
|
@@ -9,6 +9,7 @@
|
|
|
*******************************************************************************/
|
|
|
const app = getApp()
|
|
|
const Constants = require('@/utils/Constants');
|
|
|
+const util = require('@/utils/util');
|
|
|
const mixins = require('@/mixins/index.js')
|
|
|
mixins: [mixins],
|
|
|
Page({
|
|
|
@@ -17,164 +18,48 @@ mixins: [mixins],
|
|
|
* 页面的初始数据
|
|
|
*/
|
|
|
data: {
|
|
|
- active: 0,
|
|
|
- activeNames: [
|
|
|
- "1"
|
|
|
- ],
|
|
|
annexPaths: [],
|
|
|
dealFalg: "true",
|
|
|
disabledSave: true,
|
|
|
fileList: [],
|
|
|
- form: {
|
|
|
- balanceAmount: 0,
|
|
|
- customer: {
|
|
|
- addressFull: "辽宁省沈阳市浑南区沈阳市浑南区人民政府(新聪街西)1",
|
|
|
- addressName: "沈阳市浑南区人民政府(新聪街西)",
|
|
|
- bankAccount: "",
|
|
|
- customerName: "ZHANGZAHNG",
|
|
|
- customerPhone: "13512341234"
|
|
|
- },
|
|
|
- fileList: [],
|
|
|
- order: {},
|
|
|
- orderDetail: [],
|
|
|
- orderId: "",
|
|
|
- orgCode: "",
|
|
|
- receivable: 0,
|
|
|
- remarks: "",
|
|
|
- staffCode: "",
|
|
|
- sumAmount: "99990"
|
|
|
- },
|
|
|
+
|
|
|
guId: "474fd125-7b97-4c30-88f2-5dd731fd111b",
|
|
|
page: "orderBillingAdd",
|
|
|
pageIndex: "undefined",
|
|
|
- settlementTypeFlag: true,
|
|
|
- settlementTypeList: [
|
|
|
- {
|
|
|
- accountType: "收款账户类型-现金",
|
|
|
- accountname: "现金",
|
|
|
- addressFull: null,
|
|
|
- ascpId: null,
|
|
|
- categoryCode: null,
|
|
|
- categoryId: null,
|
|
|
- categoryName: null,
|
|
|
- channelId: null,
|
|
|
- checked: true,
|
|
|
- code: null,
|
|
|
- contactName: null,
|
|
|
- deliveryPhone: null,
|
|
|
- cpId: null,
|
|
|
- customerPhone: null,
|
|
|
- defSettlementType: 516,
|
|
|
- defWhId: null,
|
|
|
- erpOrgCode: null,
|
|
|
- erpStaffCode: null,
|
|
|
- flgStore: false,
|
|
|
- flgValid: null,
|
|
|
- id: null,
|
|
|
- imageReceiptCode: null,
|
|
|
- imageReceiptCode_ping: "https://hgscrm-dev.oss-cn-shenzhen.aliyuncs.com/null",
|
|
|
- jobId: 0,
|
|
|
- keyWords: null,
|
|
|
- name: null,
|
|
|
- objCode: null,
|
|
|
- objId: null,
|
|
|
- objName: null,
|
|
|
- objType: null,
|
|
|
- objTypeName: null,
|
|
|
- orgAscpId: null,
|
|
|
- orgAscpName: null,
|
|
|
- orgCode: null,
|
|
|
- orgId: null,
|
|
|
- orgName: null,
|
|
|
- orgSale2Id: null,
|
|
|
- orgSale2Name: null,
|
|
|
- orgSalesChannel: null,
|
|
|
- orgSalesChannelName: null,
|
|
|
- parentId: null,
|
|
|
- phone: null,
|
|
|
- postId: null,
|
|
|
- postName: null,
|
|
|
- qvUserid: null,
|
|
|
- remarks: null,
|
|
|
- sale1Id: null,
|
|
|
- sale2Id: null,
|
|
|
- salesChannel: null,
|
|
|
- salesChannelName: null,
|
|
|
- sumAmount: "70000",
|
|
|
- toiletsNum: null,
|
|
|
- typeId: 516,
|
|
|
- typeName: "无库无ERP00001",
|
|
|
- whId: null,
|
|
|
- whName: null
|
|
|
- },
|
|
|
- {
|
|
|
- accountType: "收款账户类型-现金",
|
|
|
- accountname: "现金",
|
|
|
- addressFull: null,
|
|
|
- ascpId: null,
|
|
|
- categoryCode: null,
|
|
|
- categoryId: null,
|
|
|
- categoryName: null,
|
|
|
- channelId: null,
|
|
|
- code: null,
|
|
|
- contactName: null,
|
|
|
- deliveryPhone: null,
|
|
|
- cpId: null,
|
|
|
- customerPhone: null,
|
|
|
- defSettlementType: 516,
|
|
|
- defWhId: null,
|
|
|
- erpOrgCode: null,
|
|
|
- erpStaffCode: null,
|
|
|
- flgStore: false,
|
|
|
- flgValid: null,
|
|
|
- id: null,
|
|
|
- imageReceiptCode: null,
|
|
|
- imageReceiptCode_ping: "https://hgscrm-dev.oss-cn-shenzhen.aliyuncs.com/null",
|
|
|
- jobId: 0,
|
|
|
- keyWords: null,
|
|
|
- name: null,
|
|
|
- objCode: null,
|
|
|
- objId: null,
|
|
|
- objName: null,
|
|
|
- objType: null,
|
|
|
- objTypeName: null,
|
|
|
- orgAscpId: null,
|
|
|
- orgAscpName: null,
|
|
|
- orgCode: null,
|
|
|
- orgId: null,
|
|
|
- orgName: null,
|
|
|
- orgSale2Id: null,
|
|
|
- orgSale2Name: null,
|
|
|
- orgSalesChannel: null,
|
|
|
- orgSalesChannelName: null,
|
|
|
- parentId: null,
|
|
|
- phone: null,
|
|
|
- postId: null,
|
|
|
- postName: null,
|
|
|
- qvUserid: null,
|
|
|
- remarks: null,
|
|
|
- sale1Id: null,
|
|
|
- sale2Id: null,
|
|
|
- salesChannel: null,
|
|
|
- salesChannelName: null,
|
|
|
- sumAmount: 0,
|
|
|
- toiletsNum: null,
|
|
|
- typeId: 548,
|
|
|
- typeName: "无库无ERP00002",
|
|
|
- whId: null,
|
|
|
- whName: null
|
|
|
- }
|
|
|
- ],
|
|
|
routeObjName: 'receiptPayment',
|
|
|
- accountService: app.globalData['accountService'],
|
|
|
+ moneyAccountService: app.globalData['moneyAccountService'],
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * @desc : 设置查询参数
|
|
|
+ * @date : 2024年3月8日
|
|
|
+ * @author : 姜永辉
|
|
|
+ */
|
|
|
+ setSearchParams(params) {
|
|
|
+ return params;
|
|
|
+ },
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @desc : 查询 入库单
|
|
|
+ * @date : 2024年3月8日
|
|
|
+ * @author : 姜永辉
|
|
|
+ */
|
|
|
+ getData(params) {
|
|
|
+ return this.excute(this.data.moneyAccountService, this.data.moneyAccountService.selectByCond, params);
|
|
|
+ },
|
|
|
|
|
|
/**
|
|
|
- * 生命周期函数--监听页面加载
|
|
|
+ * @desc : 处理接口返回数据
|
|
|
+ * @date : 2024年3月8日
|
|
|
+ * @author : 姜永辉
|
|
|
*/
|
|
|
- onLoad: function (options) {
|
|
|
+ handleSearchData(tableData) {
|
|
|
+ let formData = JSON.parse(this.data.item)
|
|
|
|
|
|
+ this.setData({
|
|
|
+ formData: this.data.item,
|
|
|
+ form: formData,
|
|
|
+ })
|
|
|
},
|
|
|
|
|
|
|
|
|
@@ -184,14 +69,34 @@ mixins: [mixins],
|
|
|
* @author : 姜永辉
|
|
|
*/
|
|
|
validData() {
|
|
|
- let formData = JSON.parse(this.data.formData)
|
|
|
- if (formData.goodsList == null || formData.goodsList.length == 0) {
|
|
|
+ let msgError = null
|
|
|
+
|
|
|
+ // 请选择支付方式
|
|
|
+ if (this.data.settlementTypeListLength == null || this.data.settlementTypeListLength == 0) {
|
|
|
+ msgError = '请选择支付方式'
|
|
|
+ }
|
|
|
+ let sumAmount = Number(0)
|
|
|
+ this.data.tableData.forEach(item => {
|
|
|
+ if (item.checked && item.balance < item.sumAmount) {
|
|
|
+ sumAmount += Number(item.sumAmount)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ if (msgError != null) {
|
|
|
wx.showToast({
|
|
|
- title: mixins.$t("chooseGoodsInfo"),
|
|
|
+ title: msgError,
|
|
|
icon: 'none'
|
|
|
})
|
|
|
return false
|
|
|
}
|
|
|
+ if (sumAmount != form.sumAmount) {
|
|
|
+ wx.showToast({
|
|
|
+ title: '输入收款金额不正确',
|
|
|
+ icon: 'none'
|
|
|
+ })
|
|
|
+ return false
|
|
|
+ }
|
|
|
+
|
|
|
return true
|
|
|
},
|
|
|
|
|
|
@@ -200,26 +105,25 @@ mixins: [mixins],
|
|
|
* @date : 2024/2/1 15:49
|
|
|
* @author : 姜永辉
|
|
|
*/
|
|
|
- setParams(params) {
|
|
|
- let formData = JSON.parse(this.data.formData)
|
|
|
-
|
|
|
+ setParams(params) {
|
|
|
+ let form = this.data.form
|
|
|
//收付款类型-收款的查询参数
|
|
|
params.rpType = Constants.rpType.receipt
|
|
|
- params.orgId = formData.orgId //组织部门
|
|
|
- params.staffId = formData.staffId // 员工
|
|
|
+ params.orgId = form.orgId //组织部门
|
|
|
+ params.staffId = form.staffId // 员工
|
|
|
// // 供应商1 客户2 所有 传空
|
|
|
- if (formData.objType == 1) {
|
|
|
- params.supId = formData.outObject // 供应商
|
|
|
- }
|
|
|
- if (formData.objType == 2) {
|
|
|
- params.cusId = formData.outObject // 客户
|
|
|
- }
|
|
|
- // params.whId = formData.whId // 仓库
|
|
|
- params.remarks = formData.remarks // 备注
|
|
|
+ params.objectId = this.data.objInfo.cusId // 客户
|
|
|
+ // 收款金额
|
|
|
+ params.sumAmtRec = 0
|
|
|
+ // 合计应收冲抵金额
|
|
|
+ params.sumAmtReceivableHandle = form.sumAmount
|
|
|
+ // 合计优惠金额
|
|
|
+ params.sumWaiveAmt = 0
|
|
|
+ params.annexPaths = {}
|
|
|
+ params.accDate = form.accDate //
|
|
|
+ params.remarks = form.remarks // 备注
|
|
|
params.makeStaff = app.globalData.user.staffId // 制单人
|
|
|
-
|
|
|
- params.itemList = formData.goodsList //商品明细
|
|
|
- console.log("setParams", params);
|
|
|
+ params.itemList = [] //明细
|
|
|
return params
|
|
|
},
|
|
|
|
|
|
@@ -229,7 +133,7 @@ mixins: [mixins],
|
|
|
* @author : 姜永辉
|
|
|
*/
|
|
|
saveData() {
|
|
|
- return this.excute(this.data.service, this.data.service.save, this.data.params)
|
|
|
+ return this.excute(this.data.service, this.data.service.insertReceivableReceipt, this.data.params)
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
@@ -254,83 +158,38 @@ mixins: [mixins],
|
|
|
*/
|
|
|
catchtapCheck(e) {
|
|
|
let item = e.currentTarget.dataset.item
|
|
|
- let list = this.data.settlementTypeList
|
|
|
+ let list = this.data.tableData
|
|
|
let form = this.data.form
|
|
|
let index = e.target.dataset.index
|
|
|
-
|
|
|
-
|
|
|
if (list && list.length > 0) {
|
|
|
- if (this.data.type == 0 || this.data.type == 4 || this.data.type == 3 || (this.data.page == 'orderBilling' && this.data.type == 1)) {
|
|
|
- //客户收款结算方式单选
|
|
|
- list.forEach(item => {
|
|
|
- item.checked = false
|
|
|
- })
|
|
|
- list.forEach(res => {
|
|
|
- if (res.typeId === item.typeId) {
|
|
|
- res.checked = !res.checked
|
|
|
- }
|
|
|
- })
|
|
|
- let settlementTypeListLength = list.filter(item => {
|
|
|
- return item.checked
|
|
|
- })
|
|
|
- if (settlementTypeListLength.length == 1) {
|
|
|
- list.forEach(res => {
|
|
|
- if (res.checked) {
|
|
|
- res.sumAmount = form.sumAmount
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- this.setData({
|
|
|
- settlementTypeList: list,
|
|
|
- settlementTypeListLength: settlementTypeListLength.length //已选数量
|
|
|
- })
|
|
|
- } else {
|
|
|
- //客户收款结算方式多选
|
|
|
- if (list[index].checked) {
|
|
|
- list[index].sumAmount = Number(0)
|
|
|
+ // formType :1 收款单 ,2 付款单,
|
|
|
+ //客户收款结算方式多选
|
|
|
+ if (list[index].checked) {
|
|
|
+ list[index].sumAmount = Number(0)
|
|
|
+ }
|
|
|
+ list.forEach(res => {
|
|
|
+ if (res.macId === item.macId) {
|
|
|
+ res.checked = !res.checked
|
|
|
}
|
|
|
+ })
|
|
|
+ //已选数量
|
|
|
+ let settlementTypeListLength = list.filter(item => {
|
|
|
+ return item.checked
|
|
|
+ })
|
|
|
+
|
|
|
+ if (settlementTypeListLength.length == 1) {
|
|
|
list.forEach(res => {
|
|
|
- if (res.typeId === item.typeId) {
|
|
|
- res.checked = !res.checked
|
|
|
+ if (res.checked) {
|
|
|
+ res.sumAmount = form.receivableResidue
|
|
|
}
|
|
|
})
|
|
|
- //已选数量
|
|
|
- let settlementTypeListLength = list.filter(item => {
|
|
|
- return item.checked
|
|
|
- })
|
|
|
-
|
|
|
- if (settlementTypeListLength.length == 1) {
|
|
|
- list.forEach(res => {
|
|
|
- if (res.checked) {
|
|
|
- res.sumAmount = form.sumAmount
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
- let sumAmountFlag = true
|
|
|
- if (settlementTypeListLength.length == 0) {
|
|
|
- form.sumAmount = form.sumTempAmount
|
|
|
- sumAmountFlag = false
|
|
|
- this.setData({
|
|
|
- sumAmountFlag: false
|
|
|
- })
|
|
|
-
|
|
|
- } else {
|
|
|
- sumAmountFlag = true
|
|
|
- this.setData({
|
|
|
- sumAmountFlag: true
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- this.setData({
|
|
|
- form: form,
|
|
|
- settlementTypeList: list,
|
|
|
- settlementTypeListLength: settlementTypeListLength.length //已选数量
|
|
|
- })
|
|
|
- if (sumAmountFlag) {
|
|
|
- this.getSumAmount(list)
|
|
|
- }
|
|
|
-
|
|
|
}
|
|
|
+ console.log(list);
|
|
|
+ this.setData({
|
|
|
+ tableData: list,
|
|
|
+ settlementTypeListLength: settlementTypeListLength.length //已选数量
|
|
|
+ })
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
|
|
|
@@ -340,52 +199,33 @@ mixins: [mixins],
|
|
|
* @param {*} e
|
|
|
*/
|
|
|
sumAmountBindValue(e) {
|
|
|
- let settlementTypeList = this.data.settlementTypeList
|
|
|
+ let tableData = this.data.tableData
|
|
|
let value = e.detail.value ? Number(e.detail.value) : 0
|
|
|
let index = e.currentTarget.dataset.index
|
|
|
- settlementTypeList[index].sumAmount = value
|
|
|
+ tableData[index].sumAmount = value
|
|
|
this.setData({
|
|
|
- settlementTypeList: settlementTypeList
|
|
|
+ tableData: tableData
|
|
|
})
|
|
|
- this.getSumAmount(settlementTypeList)
|
|
|
- },
|
|
|
-
|
|
|
- getSumAmount(settlementTypeList) {
|
|
|
- let form = this.data.form
|
|
|
- let sumAmountTemp = Number(0)
|
|
|
- if (settlementTypeList && settlementTypeList.length > 0) {
|
|
|
- settlementTypeList.forEach(res => {
|
|
|
- if (res.checked) {
|
|
|
- sumAmountTemp = util.AddNumber(sumAmountTemp, res.sumAmount ? res.sumAmount : 0)
|
|
|
- }
|
|
|
- })
|
|
|
- form.sumAmount = sumAmountTemp
|
|
|
- this.setData({
|
|
|
- form: form
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
* @desc : 销售价格编辑
|
|
|
- * @author : 常皓宁
|
|
|
+ * @author : 姜永辉
|
|
|
* @date : 2022/5/31 14:45
|
|
|
*/
|
|
|
changeSalesPriceField(e) {
|
|
|
let form = this.data.form
|
|
|
form.sumAmount = e.detail.value;
|
|
|
- let settlementTypeList = this.data.settlementTypeList
|
|
|
- if (settlementTypeList && settlementTypeList.length > 0) {
|
|
|
- settlementTypeList.forEach(res => {
|
|
|
+ let tableData = this.data.tableData
|
|
|
+ if (tableData && tableData.length > 0) {
|
|
|
+ tableData.forEach(res => {
|
|
|
if (res.checked) {
|
|
|
res.sumAmount = Number(e.detail.value ? e.detail.value : 0);
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
-
|
|
|
this.setData({
|
|
|
- settlementTypeList: settlementTypeList,
|
|
|
+ tableData: tableData,
|
|
|
form
|
|
|
})
|
|
|
},
|
|
|
@@ -411,8 +251,4 @@ mixins: [mixins],
|
|
|
|
|
|
},
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
})
|