|
@@ -357,6 +357,47 @@
|
|
|
></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+
|
|
|
+ <el-table-column
|
|
|
+ :sortable="currentTab === 'Arrangement'"
|
|
|
+ :sort-method="refSort"
|
|
|
+ label="Reference"
|
|
|
+ width="100"
|
|
|
+ >
|
|
|
+ <template #default="scope">
|
|
|
+ <el-select
|
|
|
+ v-if="
|
|
|
+ scope.row.addFlag ||
|
|
|
+ !scope.row.Reference ||
|
|
|
+ (scope.row.Reference && scope.row.editFlag)
|
|
|
+ "
|
|
|
+ v-model="scope.row.Reference"
|
|
|
+ size="small"
|
|
|
+ :remote-method="debounce(searchSO, 1500)"
|
|
|
+ :loading="loading2"
|
|
|
+ style="width: 100%"
|
|
|
+ remote
|
|
|
+ filterable
|
|
|
+ @change="($e) => onReferenceChange($e, scope.$index)"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="option in soList"
|
|
|
+ :key="option.id"
|
|
|
+ :value="option.Reference"
|
|
|
+ :label="option.Reference"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ <div v-else-if="scope.row.Sales_Order?.id">
|
|
|
+ <a
|
|
|
+ :href="`https://crm.zoho.com/crm/org742735154/tab/SalesOrders/${scope.row.Sales_Order.id}/canvas/4791186000044787304`"
|
|
|
+ target="_blank"
|
|
|
+ >
|
|
|
+ {{ scope.row.Reference || scope.row.PO_Number }}
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
<el-table-column
|
|
|
label="唛头"
|
|
|
width="220"
|
|
@@ -568,17 +609,6 @@
|
|
|
></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
- :sortable="currentTab === 'Arrangement'"
|
|
|
- :sort-method="refSort"
|
|
|
- label="Reference"
|
|
|
- fixed="right"
|
|
|
- width="110"
|
|
|
- >
|
|
|
- <template #default="scope">
|
|
|
- <div class="">{{ scope.row.Reference || scope.row.PO_Number }}</div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
<el-table-column
|
|
|
:selectable="calcSelectAble"
|
|
|
type="selection"
|
|
@@ -1424,6 +1454,46 @@ const search = (keyword: string) => {
|
|
|
.finally(() => (loading2.value = false))
|
|
|
}
|
|
|
|
|
|
+let soList = ref([] as any[])
|
|
|
+
|
|
|
+let searchSO = (keyword: string) => {
|
|
|
+ if (keyword.length < 2) return
|
|
|
+ keyword = keyword.trim().toUpperCase()
|
|
|
+ loading2.value = true
|
|
|
+ zoho.CRM.API.coql({
|
|
|
+ select_query:
|
|
|
+ "select id,Reference,Subject,Contract_Title from Sales_Orders where Reference like '%" +
|
|
|
+ keyword +
|
|
|
+ "%'",
|
|
|
+ })
|
|
|
+ .then((res: any) => {
|
|
|
+ if (Array.isArray(res.data) && res.data.length) {
|
|
|
+ soList.value = res.data
|
|
|
+ } else {
|
|
|
+ soList.value = []
|
|
|
+ ElMessage.warning('No Data Found')
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .finally(() => (loading2.value = false))
|
|
|
+}
|
|
|
+let onReferenceChange = ($e: string, line = -1) => {
|
|
|
+ const temp = soList.value.filter((i) => i.Reference === $e)
|
|
|
+ let result: any = {}
|
|
|
+ if (temp.length) {
|
|
|
+ result = cloneDeep(temp[0])
|
|
|
+ }
|
|
|
+ console.log(result, 'result')
|
|
|
+ if (line > -1) {
|
|
|
+ subList.value[line].editFlag = true
|
|
|
+ subList.value[line].Sales_Order = {
|
|
|
+ module: 'SalesOrders',
|
|
|
+ id: result.id,
|
|
|
+ name: result.Subject,
|
|
|
+ }
|
|
|
+ }
|
|
|
+ subList.value[line].Marks_Nos = result.Contract_Title || ''
|
|
|
+}
|
|
|
+
|
|
|
const updateStatus = (status = '已确认') => {
|
|
|
ElMessageBox.confirm(`确定要把该记录状态更新为"${status}"吗?`, {
|
|
|
confirmButtonText: '确定',
|
|
@@ -1692,7 +1762,7 @@ const openTempShip = () => {
|
|
|
tempShipVisible.value = true
|
|
|
}
|
|
|
|
|
|
-// 别说代码行数太长搞屎山, 这个页面的功能上线之后改了6个版本, 每次都往上堆功能, 能不长嘛
|
|
|
+// 别说代码行数太长搞屎山, 这个页面的功能上线之后改了7个版本, 每次都往上堆功能, 能不长嘛
|
|
|
</script>
|
|
|
<style lang="scss">
|
|
|
.page-cargo-consolidation {
|