diff --git a/src/api/deliverySchedule/supplierDeliveryPlan.js b/src/api/deliverySchedule/supplierDeliveryPlan.js
index 466726d..843325c 100644
--- a/src/api/deliverySchedule/supplierDeliveryPlan.js
+++ b/src/api/deliverySchedule/supplierDeliveryPlan.js
@@ -3,3 +3,5 @@ import { createAPI } from "@/utils/httpRequest.js";
export const searchSupplierDeliveryPlan = data => createAPI(`/deliverySchedule/searchSupplierDeliveryPlan`,'post',data)
export const updateSupplierDeliveryPlan = data => createAPI(`/deliverySchedule/updateSupplierDeliveryPlan`,'post',data)
+
+export const removeSupplierDeliveryPlan = data => createAPI(`/deliverySchedule/removeSupplierDeliveryPlan`,'post',data)
diff --git a/src/api/deliverySchedule/supplierDeliverySchedule.js b/src/api/deliverySchedule/supplierDeliverySchedule.js
index 062ca09..90e02d7 100644
--- a/src/api/deliverySchedule/supplierDeliverySchedule.js
+++ b/src/api/deliverySchedule/supplierDeliverySchedule.js
@@ -7,3 +7,5 @@ export const updateSupplierDeliveryScheduleDeliveryQty = data => createAPI(`/del
export const autoReservationInitiateHandler = data => createAPI(`/deliverySchedule/autoReservationInitiateHandler`,'post',data)
export const addSupplierDeliveryPlan = data => createAPI(`/deliverySchedule/addSupplierDeliveryPlan`,'post',data)
+
+export const updateSupplierDeliveryScheduleDelNotifyQty = data => createAPI(`/deliverySchedule/updateSupplierDeliveryScheduleDelNotifyQty`,'post',data)
diff --git a/src/api/performance/performance.js b/src/api/performance/performance.js
index b3a129d..f2bd07e 100644
--- a/src/api/performance/performance.js
+++ b/src/api/performance/performance.js
@@ -19,3 +19,10 @@ export const pastYearPerformanceSearch = data => createAPI(`/pms/performance/pas
export const supplierPerformanceQuerySummarySearch = data => createAPI(`/pms/performance/supplierPerformanceQuerySummary`,'post',data)
export const supplierPerformanceTheMonthTotalPoints = data => createAPI(`/pms/performance/suppPerformanceListDetail`,'post',data)
+
+/**
+ * 校验参数
+ * @param data
+ * @returns {*}
+ */
+export const verifyData = data => createAPI(`/pms/performance/verifyData`,'post',data)
diff --git a/src/views/modules/deliverySchedule/externalSupplierDeliverySchedule.vue b/src/views/modules/deliverySchedule/externalSupplierDeliverySchedule.vue
index 1d9d900..177b607 100644
--- a/src/views/modules/deliverySchedule/externalSupplierDeliverySchedule.vue
+++ b/src/views/modules/deliverySchedule/externalSupplierDeliverySchedule.vue
@@ -46,10 +46,10 @@
-
+
-
-
+
+
@@ -216,7 +216,7 @@ export default {
exportList: [],
modalData: {
WantedDelDate: new Date(),
- DelPoint: '',
+ DelPlace: '',
Remark: '',
SupplierDeliveryScheduleList: [],
},
@@ -230,7 +230,7 @@ export default {
statusList: ['未送货','部分送货','已送货'],
wantedDelStartDate: '',
wantedDelEndDate: '',
- delPoint: '',
+ delPlace: '',
supplierId: this.$store.state.user.name,
supplierName: '',
partNo: '',
@@ -280,11 +280,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109003,
- serialNumber: '109003TableDelPoint',
+ serialNumber: '109003TableDelPlace',
tableId: "109003Table",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'delPoint',
+ columnProp: 'delPlace',
headerAlign: 'center',
align: "center",
columnLabel: '送货地点',
@@ -496,47 +496,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109003,
- serialNumber: '109003TableLastDeliveryQty',
+ serialNumber: '109003TableNotifyQty',
tableId: "109003Table",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'lastDeliveryQty',
- headerAlign: 'center',
- align: "right",
- columnLabel: '上一次的此次送货数量',
- columnHidden: false,
- columnImage: false,
- columnSortable: false,
- sortLv: 0,
- status: true,
- fixed: '',
- },
- {
- userId: this.$store.state.user.name,
- functionId: 109003,
- serialNumber: '109003TableDeliveryQty',
- tableId: "109003Table",
- tableName: "供应商送货计划信息表",
- columnWidth: 120,
- columnProp: 'deliveryQty',
- headerAlign: 'center',
- align: "right",
- columnLabel: '此次送货数量',
- columnHidden: false,
- columnImage: false,
- columnSortable: false,
- sortLv: 0,
- status: true,
- fixed: '',
- },
- {
- userId: this.$store.state.user.name,
- functionId: 109003,
- serialNumber: '109003TableActualDelQty',
- tableId: "109003Table",
- tableName: "供应商送货计划信息表",
- columnWidth: 120,
- columnProp: 'actualDelQty',
+ columnProp: 'notifyQty',
headerAlign: 'center',
align: "right",
columnLabel: '要求送货数量',
@@ -590,7 +554,7 @@ export default {
tableId: "109003Table",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualFirstDelDate',
+ columnProp: 'ActualFirstDelDate',
headerAlign: 'center',
align: "center",
columnLabel: '实际首次送货日期',
@@ -608,7 +572,7 @@ export default {
tableId: "109003Table",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualLatestDelDate',
+ columnProp: 'ActualLatestDelDate',
headerAlign: 'center',
align: "center",
columnLabel: '实际最后送货日期',
@@ -660,11 +624,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109003,
- serialNumber: '109003Table1DelPoint',
+ serialNumber: '109003Table1delPlace',
tableId: "109003Table1",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'delPoint',
+ columnProp: 'delPlace',
headerAlign: 'center',
align: "center",
columnLabel: '送货地点',
@@ -731,11 +695,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109003,
- serialNumber: '109003Table1ActualDelQty',
+ serialNumber: '109003Table1NotifyQty',
tableId: "109003Table1",
tableName: "供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualDelQty',
+ columnProp: 'notifyQty',
headerAlign: 'center',
align: "right",
columnLabel: '要求送货数量',
@@ -751,7 +715,7 @@ export default {
wantedDelDate: [
{ required: true, message: '要求送货日期不能为空', trigger: 'blur' }
],
- delPoint: [
+ delPlace: [
{ required: true, message: '送货地点不能为空', trigger: 'blur' }
],
allotmentQty: [
@@ -894,7 +858,7 @@ export default {
let inData = {
site: this.$store.state.user.site,
userId: this.$store.state.user.id,
- delPoint: this.modalData.DelPoint,
+ delPlace: this.modalData.DelPlace,
wantedDelDate: this.modalData.WantedDelDate,
remark: this.modalData.Remark,
supplierDeliveryScheduleList: this.modalData.SupplierDeliveryScheduleList,
diff --git a/src/views/modules/deliverySchedule/internalSupplierDeliverySchedule.vue b/src/views/modules/deliverySchedule/internalSupplierDeliverySchedule.vue
index ca92fe8..ef990aa 100644
--- a/src/views/modules/deliverySchedule/internalSupplierDeliverySchedule.vue
+++ b/src/views/modules/deliverySchedule/internalSupplierDeliverySchedule.vue
@@ -32,11 +32,11 @@
采购员
-
-
+
+
-
-
+
+
@@ -81,6 +81,7 @@
查询
+ 删除
+
-
-
+
+
-
-
+
+
@@ -211,9 +214,13 @@ import {getSiteAndBuByUserName} from "../../../api/qc/qc";
import {
addSupplierDeliveryPlan, autoReservationInitiateHandler,
searchSupplierDeliverySchedule,
- updateSupplierDeliveryScheduleDeliveryQty
+ updateSupplierDeliveryScheduleDeliveryQty, updateSupplierDeliveryScheduleDelNotifyQty
} from "../../../api/deliverySchedule/supplierDeliverySchedule";
-import {searchSupplierDeliveryPlan,updateSupplierDeliveryPlan} from "../../../api/deliverySchedule/supplierDeliveryPlan";
+import {
+ removeSupplierDeliveryPlan,
+ searchSupplierDeliveryPlan,
+ updateSupplierDeliveryPlan
+} from "../../../api/deliverySchedule/supplierDeliveryPlan";
import {getTableDefaultListLanguage, getTableUserListLanguage} from "../../../api/table";
import Chooselist from "../common/Chooselist.vue";
@@ -233,8 +240,8 @@ export default {
exportList: [],
modalData: {
WantedDelDate: '',
- delPoint: '',
- deliveryQty: '',
+ delPlace: '',
+ notifyQty: '',
lastDeliveryQty: '',
remark: '',
},
@@ -248,7 +255,7 @@ export default {
statusList: ['未送货','部分送货','已送货'],
wantedDelStartDate: '',
wantedDelEndDate: '',
- delPoint: '',
+ delPlace: '',
supplierId: '',
supplierName: '',
partNo: '',
@@ -298,11 +305,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109002,
- serialNumber: '109002TableDelPoint',
+ serialNumber: '109002TableDelPlace',
tableId: "109002Table",
tableName: "内部供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'delPoint',
+ columnProp: 'delPlace',
headerAlign: 'center',
align: "center",
columnLabel: '送货地点',
@@ -514,47 +521,11 @@ export default {
{
userId: this.$store.state.user.name,
functionId: 109002,
- serialNumber: '109002TableLastDeliveryQty',
- tableId: "109002Table",
- tableName: "内部供应商送货计划信息表",
- columnWidth: 120,
- columnProp: 'lastDeliveryQty',
- headerAlign: 'center',
- align: "right",
- columnLabel: '上一次的此次送货数量',
- columnHidden: false,
- columnImage: false,
- columnSortable: false,
- sortLv: 0,
- status: true,
- fixed: '',
- },
- {
- userId: this.$store.state.user.name,
- functionId: 109002,
- serialNumber: '109002TableDeliveryQty',
- tableId: "109002Table",
- tableName: "内部供应商送货计划信息表",
- columnWidth: 120,
- columnProp: 'deliveryQty',
- headerAlign: 'center',
- align: "right",
- columnLabel: '此次送货数量',
- columnHidden: false,
- columnImage: false,
- columnSortable: false,
- sortLv: 0,
- status: true,
- fixed: '',
- },
- {
- userId: this.$store.state.user.name,
- functionId: 109002,
- serialNumber: '109002TableActualDelQty',
+ serialNumber: '109002TableNotifyQty',
tableId: "109002Table",
tableName: "内部供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualDelQty',
+ columnProp: 'notifyQty',
headerAlign: 'center',
align: "right",
columnLabel: '要求送货数量',
@@ -608,7 +579,7 @@ export default {
tableId: "109002Table",
tableName: "内部供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualFirstDelDate',
+ columnProp: 'ActualFirstDelDate',
headerAlign: 'center',
align: "center",
columnLabel: '实际首次送货日期',
@@ -626,7 +597,7 @@ export default {
tableId: "109002Table",
tableName: "内部供应商送货计划信息表",
columnWidth: 120,
- columnProp: 'actualLatestDelDate',
+ columnProp: 'ActualLatestDelDate',
headerAlign: 'center',
align: "center",
columnLabel: '实际最后送货日期',
@@ -678,14 +649,14 @@ export default {
wantedDelDate: [
{ required: true, message: '要求送货日期不能为空', trigger: 'blur' }
],
- delPoint: [
+ delPlace: [
{ required: true, message: '送货地点不能为空', trigger: 'blur' }
],
allotmentQty: [
{ required: true, message: '此次分配的送货数量不能为空', trigger: 'blur' }
],
- deliveryQty: [
- { required: true, message: '此次送货数量不能为空', trigger: 'blur' }
+ notifyQty: [
+ { required: true, message: '要求送货数量不能为空', trigger: 'blur' }
],
},
pageIndex: 1,
@@ -819,11 +790,11 @@ export default {
saveData () {
- if (this.modalData.deliveryQty === '' || this.modalData.deliveryQty === null) {
- this.$message.error('此次送货数量不能为空')
+ if (this.modalData.notifyQty === '' || this.modalData.notifyQty === null) {
+ this.$message.error('要求送货数量不能为空')
return
}
- if (this.modalData.delPoint === '' || this.modalData.delPoint == null){
+ if (this.modalData.delPlace === '' || this.modalData.delPlace == null){
this.$message.error('送货地点不能为空')
return
}
@@ -834,9 +805,22 @@ export default {
let inData = this.modalData
updateSupplierDeliveryPlan(inData).then(({data}) => {
if (data.code === 0) {
- this.modalFlag = false
- this.getDataList()
- this.$message.success(data.msg)
+ if (data.lestNotifyQty >= 0) {
+ inData.lestNotifyQty = data.lestNotifyQty
+ updateSupplierDeliveryScheduleDelNotifyQty(inData).then(({data}) => {
+ if (data.code === 0) {
+ this.modalFlag = false
+ this.getDataList()
+ this.$message.success(data.msg)
+ } else {
+ this.$message.error(data.msg)
+ }
+ })
+ }else {
+ this.modalFlag = false
+ this.getDataList()
+ this.$message.success(data.msg)
+ }
} else {
this.$message.error(data.msg)
}
@@ -873,6 +857,42 @@ export default {
this.selectionList = val;
},
+ removeDataList() {
+ if(this.selectionList.length > 0) {
+ this.$confirm('确定删除选中的数据吗?', '提示', {
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(() => {
+ let ids = []
+ this.selectionList.forEach((item) => {
+ ids.push(item.id)
+ })
+ let inData = {
+ ids: ids
+ }
+ removeSupplierDeliveryPlan(inData).then(({data}) => {
+ if (data.code === 0) {
+ this.getDataList()
+ this.$message.success(data.msg)
+ } else {
+ this.$message.error(data.msg)
+ }
+ })
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '已取消'
+ });
+ });
+ } else {
+ this.$message({
+ message: '请选择要删除的数据',
+ type: 'warning'
+ })
+ }
+ },
+
// 每页数
sizeChangeHandle (val) {
this.pageSize = val
diff --git a/src/views/modules/deliverySchedule/supplierDeliverySchedule.vue b/src/views/modules/deliverySchedule/supplierDeliverySchedule.vue
index ec04e38..452df18 100644
--- a/src/views/modules/deliverySchedule/supplierDeliverySchedule.vue
+++ b/src/views/modules/deliverySchedule/supplierDeliverySchedule.vue
@@ -167,8 +167,8 @@
placeholder="选择日期">
-
-
+
+
@@ -202,7 +202,6 @@
{
+ return searchSupplierDeliverySchedule(this.searchData).then(({data}) => {
if (data.code === 0) {
this.dataList = data.page.list
this.pageIndex = data.page.currPage
@@ -827,6 +826,7 @@ export default {
if (row.deliveryQty > row.pendingQty) {
this.$message.error('此次送货数量不能大于待送货数量');
row.deliveryQty = row.pendingQty; // 恢复为待送货数量
+ throw new Error('此次送货数量不能大于待送货数量!'); // 抛出错误
} else {
this.updateDeliveryQty(row)
}
@@ -848,12 +848,17 @@ export default {
})
},
- autoReservationHandler () {
- if (this.searchData.partNo === '' || this.searchData.supplierID === ''){
- this.$confirm('物料编码与供应商编码筛选条件不能为空!', '提示', {
- confirmButtonText: '确定',
- type: 'warning'
- })
+ async autoReservationHandler () {
+ if (
+ (this.searchData.partNo === '' && this.searchData.partDescription === '') ||
+ (this.searchData.supplierID === '' && this.searchData.supplierName === '')
+ ) {
+ this.$message.error('物料与供应商筛选条件不能为空!')
+ return
+ }
+ await this.getDataList()
+ if (this.dataList.length === 0) {
+ this.$message.error('没有订单数据无法自动预留,请检查查询条件是否正确!')
return
}
this.autoReservationFlag = true;
@@ -896,8 +901,8 @@ export default {
this.modalData.SupplierDeliveryScheduleList = this.selectionList
},
- saveData () {
- if (this.modalData.DelPoint === '' || this.modalData.DelPoint == null){
+ async saveData () {
+ if (this.modalData.DelPlace === '' || this.modalData.DelPlace == null){
this.$message.error('送货地点不能为空')
return
}
@@ -905,24 +910,40 @@ export default {
this.$message.error('要求送货日期不能为空')
return
}
-
- let inData = {
- site: this.$store.state.user.site,
- userId: this.$store.state.user.id,
- delPoint: this.modalData.DelPoint,
- wantedDelDate: this.modalData.WantedDelDate,
- remark: this.modalData.Remark,
- supplierDeliveryScheduleList: this.modalData.SupplierDeliveryScheduleList,
- createBy: this.$store.state.user.name,
- }
- addSupplierDeliveryPlan(inData).then(({data}) => {
- if (data.code === 0) {
- this.modalFlag = false
- this.$message.success(data.msg)
- } else {
- this.$message.error(data.msg)
+ try {
+ for (const item of this.modalData.SupplierDeliveryScheduleList) {
+ await this.validateDeliveryQty(item)
}
- })
+ let inData = {
+ site: this.$store.state.user.site,
+ userId: this.$store.state.user.id,
+ delPlace: this.modalData.DelPlace,
+ wantedDelDate: this.modalData.WantedDelDate,
+ remark: this.modalData.Remark,
+ supplierDeliveryScheduleList: this.modalData.SupplierDeliveryScheduleList,
+ createBy: this.$store.state.user.name,
+ }
+ addSupplierDeliveryPlan(inData).then(({data}) => {
+ if (data.code === 0) {
+ this.modalFlag = false
+ inData.supplierDeliveryScheduleList.forEach(item => {
+ updateSupplierDeliveryScheduleDelNotifyQty(item).then(({data}) => {
+ if (data.code === 0) {
+ this.getDataList()
+ this.$message.success(data.msg)
+ } else {
+ this.$message.error(data.msg)
+ }
+ })
+ })
+ } else {
+ this.$message.error(data.msg)
+ }
+ })
+ } catch (error) {
+ // 捕获 validateDeliveryQty 抛出的错误,并终止后续操作
+ console.error(error.message);
+ }
},
handleSelectionChange(val) {
diff --git a/src/views/modules/performance/supplierPerformanceTheYear.vue b/src/views/modules/performance/supplierPerformanceTheYear.vue
index 555c537..9bc2203 100644
--- a/src/views/modules/performance/supplierPerformanceTheYear.vue
+++ b/src/views/modules/performance/supplierPerformanceTheYear.vue
@@ -26,7 +26,7 @@
供应商编码
-
+
@@ -142,7 +142,7 @@
import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js'
import {getSiteAndBuByUserName} from "../../../api/qc/qc";
import Chooselist from '@/views/modules/common/Chooselist';
- import {performanceIndicatorDefinitionCalculation} from "../../../api/performance/performance";
+ import {performanceIndicatorDefinitionCalculation, verifyData} from "../../../api/performance/performance";
/* 列表组件 */
export default {
components: {
@@ -417,6 +417,28 @@
})
},
+ setupSupplierBlur (tagNo) {
+ if (this.searchData.supplierId != null && this.searchData.supplierId !== '') {
+ let tempData = {
+ tagno: tagNo,
+ conditionSql: " and SupplierID = '" + this.searchData.supplierId + "'" + " and site = '" + this.searchData.site + "'"
+ }
+ verifyData(tempData).then(({data}) => {
+ if (data && data.code === 0) {
+ if (data.baseListData.length > 0) {
+ this.searchData.supplierName = data.baseListData[0].SupplierName
+ } else {
+ this.$message.warning('供应商编码不存在')
+ this.searchData.supplierName = ''
+ }
+ } else {
+ this.$message.warning(data.msg)
+ this.modalData.supplierName = ''
+ }
+ })
+ }
+ },
+
// 每页数
sizeChangeHandle (val) {
this.pageSize = val
diff --git a/src/views/modules/performance/supplierPerformanceThisMonth.vue b/src/views/modules/performance/supplierPerformanceThisMonth.vue
index 290646e..711a474 100644
--- a/src/views/modules/performance/supplierPerformanceThisMonth.vue
+++ b/src/views/modules/performance/supplierPerformanceThisMonth.vue
@@ -26,7 +26,7 @@
供应商编码
-
+
@@ -119,7 +119,9 @@
import {getTableDefaultListLanguage, getTableUserListLanguage} from "@/api/table.js"
import {userFavoriteList, saveUserFavorite, removeUserFavorite} from '@/api/userFavorite.js'
import {getSiteAndBuByUserName} from "../../../api/qc/qc";
- import Chooselist from '@/views/modules/common/Chooselist';/* 列表组件 */
+ import Chooselist from '@/views/modules/common/Chooselist';
+ import {verifyData} from "../../../api/performance/performance";
+ /* 列表组件 */
export default {
components: {
Chooselist, /* 选择的组件 */
@@ -337,6 +339,28 @@
})
},
+ setupSupplierBlur (tagNo) {
+ if (this.searchData.supplierId != null && this.searchData.supplierId !== '') {
+ let tempData = {
+ tagno: tagNo,
+ conditionSql: " and SupplierID = '" + this.searchData.supplierId + "'" + " and site = '" + this.searchData.site + "'"
+ }
+ verifyData(tempData).then(({data}) => {
+ if (data && data.code === 0) {
+ if (data.baseListData.length > 0) {
+ this.searchData.supplierName = data.baseListData[0].SupplierName
+ } else {
+ this.$message.warning('供应商编码不存在')
+ this.searchData.supplierName = ''
+ }
+ } else {
+ this.$message.warning(data.msg)
+ this.modalData.supplierName = ''
+ }
+ })
+ }
+ },
+
// 收藏 OR 取消收藏
favoriteFunction () {
let userFavorite = {