Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -281,9 +281,6 @@
|
|||||||
</q-card-section>
|
</q-card-section>
|
||||||
|
|
||||||
<q-card-section style="max-height: 68vh; overflow: auto;">
|
<q-card-section style="max-height: 68vh; overflow: auto;">
|
||||||
<div class="text-caption text-grey-7 q-mb-sm">
|
|
||||||
Ilk etap dummy: isBlocked=0 kabul edilmis satirlar gibi listelenir.
|
|
||||||
</div>
|
|
||||||
<div
|
<div
|
||||||
v-for="(row, idx) in attributeRows"
|
v-for="(row, idx) in attributeRows"
|
||||||
:key="`${row.AttributeTypeCodeNumber}-${idx}`"
|
:key="`${row.AttributeTypeCodeNumber}-${idx}`"
|
||||||
@@ -307,7 +304,6 @@
|
|||||||
option-label="label"
|
option-label="label"
|
||||||
option-value="value"
|
option-value="value"
|
||||||
:options="row.Options"
|
:options="row.Options"
|
||||||
label="AttributeCode - AttributeDescription"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -758,6 +754,18 @@ function collectLinesFromRows (selectedRows) {
|
|||||||
NewDesc: mergeDescWithAutoNote(row, row.NewDesc || row.OldDesc)
|
NewDesc: mergeDescWithAutoNote(row, row.NewDesc || row.OldDesc)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const oldItemCode = String(row.OldItemCode || '').trim().toUpperCase()
|
||||||
|
const oldColor = normalizeShortCode(row.OldColor, 3)
|
||||||
|
const oldDim2 = normalizeShortCode(row.OldDim2, 3)
|
||||||
|
const oldDesc = String(row.OldDesc || '').trim()
|
||||||
|
const hasChange = (
|
||||||
|
baseLine.NewItemCode !== oldItemCode ||
|
||||||
|
baseLine.NewColor !== oldColor ||
|
||||||
|
baseLine.NewDim2 !== oldDim2 ||
|
||||||
|
String(baseLine.NewDesc || '').trim() !== oldDesc
|
||||||
|
)
|
||||||
|
if (!hasChange) continue
|
||||||
|
|
||||||
for (const id of (row.OrderLineIDs || [])) {
|
for (const id of (row.OrderLineIDs || [])) {
|
||||||
lines.push({
|
lines.push({
|
||||||
OrderLineID: id,
|
OrderLineID: id,
|
||||||
@@ -1156,11 +1164,17 @@ async function sendUpdateMailAfterApply (selectedRows) {
|
|||||||
const host = String(window?.location?.hostname || '').trim().toLowerCase()
|
const host = String(window?.location?.hostname || '').trim().toLowerCase()
|
||||||
const isLocalHost = host === 'localhost' || host === '127.0.0.1'
|
const isLocalHost = host === 'localhost' || host === '127.0.0.1'
|
||||||
if (isLocalHost) {
|
if (isLocalHost) {
|
||||||
|
console.info('[OrderProductionUpdate] sendUpdateMailAfterApply skipped (localhost)', { orderHeaderID: orderId, host })
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
const t0 = nowMs()
|
||||||
const payload = buildProductionUpdateMailPayload(selectedRows)
|
const payload = buildProductionUpdateMailPayload(selectedRows)
|
||||||
|
console.info('[OrderProductionUpdate] sendUpdateMailAfterApply start', {
|
||||||
|
orderHeaderID: orderId,
|
||||||
|
updatedItems: payload?.updatedItems?.length || 0
|
||||||
|
})
|
||||||
const res = await api.post('/order/send-market-mail', {
|
const res = await api.post('/order/send-market-mail', {
|
||||||
orderHeaderID: orderId,
|
orderHeaderID: orderId,
|
||||||
operation: payload.operation,
|
operation: payload.operation,
|
||||||
@@ -1171,6 +1185,11 @@ async function sendUpdateMailAfterApply (selectedRows) {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const sentCount = Number(res?.data?.sentCount || 0)
|
const sentCount = Number(res?.data?.sentCount || 0)
|
||||||
|
console.info('[OrderProductionUpdate] sendUpdateMailAfterApply done', {
|
||||||
|
orderHeaderID: orderId,
|
||||||
|
sentCount,
|
||||||
|
durationMs: Math.round(nowMs() - t0)
|
||||||
|
})
|
||||||
$q.notify({
|
$q.notify({
|
||||||
type: 'positive',
|
type: 'positive',
|
||||||
message: sentCount > 0
|
message: sentCount > 0
|
||||||
@@ -1178,6 +1197,12 @@ async function sendUpdateMailAfterApply (selectedRows) {
|
|||||||
: 'Guncelleme maili gonderildi'
|
: 'Guncelleme maili gonderildi'
|
||||||
})
|
})
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
console.error('[OrderProductionUpdate] sendUpdateMailAfterApply failed', {
|
||||||
|
orderHeaderID: orderId,
|
||||||
|
status: err?.response?.status,
|
||||||
|
data: err?.response?.data,
|
||||||
|
message: err?.message
|
||||||
|
})
|
||||||
$q.notify({
|
$q.notify({
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
message: 'Guncelleme kaydedildi, mail gonderilemedi.'
|
message: 'Guncelleme kaydedildi, mail gonderilemedi.'
|
||||||
@@ -1299,7 +1324,7 @@ async function onBulkSubmit () {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
if (!lines.length) {
|
if (!lines.length) {
|
||||||
$q.notify({ type: 'negative', message: 'Secili satirlarda guncellenecek kayit bulunamadi.' })
|
$q.notify({ type: 'warning', message: 'Secili satirlarda degisiklik yok.' })
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const { errMsg: cdErrMsg, cdItems } = collectCdItemsFromSelectedRows(selectedRows)
|
const { errMsg: cdErrMsg, cdItems } = collectCdItemsFromSelectedRows(selectedRows)
|
||||||
|
|||||||
Reference in New Issue
Block a user