btn works

This commit is contained in:
2022-09-14 22:59:38 +02:00
parent 49df6d97e5
commit abc8de7933
5 changed files with 77 additions and 49 deletions
+18 -14
View File
@@ -6,7 +6,6 @@ const {MongoManager, formatDate} = require("./src/workers/mongo_manager");
const mongoManager = new MongoManager(); const mongoManager = new MongoManager();
let excelUtil = new ExcelUtil(); let excelUtil = new ExcelUtil();
let contactList = excelUtil.readContacts()
let collectionName = formatDate(new Date()) let collectionName = formatDate(new Date())
async function filterAlreadyBookedContacts(contactList) { async function filterAlreadyBookedContacts(contactList) {
@@ -20,18 +19,6 @@ async function filterAlreadyBookedContacts(contactList) {
return contactsToBook; return contactsToBook;
} }
mongoManager.connect().then(r => {
filterAlreadyBookedContacts(contactList).then(listToBook => {
console.log(listToBook.length)
android.devices().then((devices) => {
let segmentNumber = listToBook.length / devices.length;
for (let i = 0; i < devices.length; i++) {
startWithList(listToBook.slice(i * segmentNumber, segmentNumber * (i + 1)), devices[i]);
}
})
})
}
)
// Connect to the device. // Connect to the device.
@@ -59,7 +46,6 @@ async function startBook(contactPojo, device) {
} }
} }
async function startWithList(contacts, device) { async function startWithList(contacts, device) {
await contacts.reduce(async (promise, contactPojo) => { await contacts.reduce(async (promise, contactPojo) => {
// This line will wait for the last async function to finish. // This line will wait for the last async function to finish.
@@ -70,3 +56,21 @@ async function startWithList(contacts, device) {
console.log(contents); console.log(contents);
}, Promise.resolve()); }, Promise.resolve());
} }
async function startBookWithNumbers(startNumber, endNumber) {
let contactList = excelUtil.readContacts();
mongoManager.connect().then(r => {
filterAlreadyBookedContacts(contactList).then(listToBook => {
console.log(listToBook.length)
android.devices().then((devices) => {
let segmentNumber = listToBook.length / devices.length;
for (let i = 0; i < devices.length; i++) {
startWithList(listToBook.slice(i * segmentNumber, segmentNumber * (i + 1)), devices[i]);
}
})
})
}
)
}
module.exports = startBookWithNumbers
+17 -6
View File
@@ -5,20 +5,31 @@
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP --> <!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"> <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'">
<title>爱马仕约会</title> <title>爱马仕约会</title>
<script src="./renderer.js"></script>
</head> </head>
<body> <body>
<input type="number" id="start_number">开始联系人位置</input> <div class="form-group">
<input type="number" id="end_number">结束联系人位置</input> <h3 class="col-md-4 control-label">选择联系人</h3>
<label name="store">目标商店</label> <div class="col-md-4">
<select name="store_list" id="store_selector"> <label for="start_number">开始联系人位置</label>
<input type="number" id="start_number" value="0"/>
<br>
<label for="start_number">结束联系人位置</label>
<input type="number" id="end_number" value="0"/>
</div>
</div>
<br/>
<div class="col-md-4">
<label name="store" for="store_selector">目标商店</label>
<select name="store_list" id="store_selector">
<option value="faubourg">Hermès Faubourg Saint-Honoré</option> <option value="faubourg">Hermès Faubourg Saint-Honoré</option>
<option value="georgev">Hermès George V</option> <option value="georgev">Hermès George V</option>
<option value="sevres">Hermès Sèvres</option> <option value="sevres">Hermès Sèvres</option>
</select> </select>
</div>
<br/> <br/>
<button id="start_book_btn">开始约会 <button id="start_book_btn">开始约会
</button> </button>
<script src="./renderer.js"></script>
</body> </body>
</html> </html>
+10 -3
View File
@@ -1,4 +1,4 @@
const {app, BrowserWindow} = require('electron') const {app, BrowserWindow, ipcMain} = require('electron')
const path = require("path"); const path = require("path");
const createWindow = () => { const createWindow = () => {
@@ -13,6 +13,10 @@ const createWindow = () => {
win.loadFile('index.html').then((r) => { win.loadFile('index.html').then((r) => {
}) })
ipcMain.on('start-book', (event, startNumber, endNumber, selectedStore) => {
startBook(startNumber, endNumber, selectedStore)
})
win.webContents.openDevTools();
} }
app.whenReady().then(() => { app.whenReady().then(() => {
@@ -25,8 +29,11 @@ app.whenReady().then(() => {
app.on('window-all-closed', () => { app.on('window-all-closed', () => {
if (process.platform !== 'darwin') app.quit() if (process.platform !== 'darwin') app.quit()
}) })
const startBook = () => {
console.log("called") function startBook(startNumber, endNumber, selectedStore) {
console.log("startNumber: " + startNumber)
console.log("endNumber: " + endNumber)
console.log("selectedStore: " + selectedStore)
} }
+10 -22
View File
@@ -1,25 +1,13 @@
const startBookWithNumbers = require('appointment')
let startNumber = 0;
let endNumber = 0;
let selectedStore = 'faubourg';
window.addEventListener('load', () => { const {contextBridge, ipcRenderer} = require('electron')
document.getElementById("start_book_btn").addEventListener('click', () => {
startBook() contextBridge.exposeInMainWorld('appointment', {
}) startBook: (startNumber, endNumber, selectedStore) => ipcRenderer.send('start-book', startNumber, endNumber, selectedStore)
document.getElementById("store_selector").addEventListener('change', (event) => {
selectedStore = event.target.value
})
document.getElementById("start_number").addEventListener('change', (event) => {
startNumber = event.target.value
})
document.getElementById("end_number").addEventListener('change', (event) => {
endNumber = event.target.value
})
}) })
const startBook = () => { //
alert("开始约会 " + "store:" + selectedStore + ",startNumber:" + startNumber + ",endNumber:" + endNumber) // const startBook = () => {
console.log("开始约会 " + "store:" + selectedStore) // console.log("开始约会 " + "store:" + selectedStore)
// startBookWithNumbers() // window.appointment.startBook(startNumber, endNumber, selectedStore)
} // // startBookWithNumbers()
// }
+18
View File
@@ -0,0 +1,18 @@
let startNumber = 0;
let endNumber = 0;
let selectedStore = 'faubourg';
window.addEventListener('load', () => {
document.getElementById("start_book_btn").addEventListener('click', () => {
window.appointment.startBook(startNumber, endNumber, selectedStore)
})
document.getElementById("store_selector").addEventListener('change', (event) => {
selectedStore = event.target.value
})
document.getElementById("start_number").addEventListener('change', (event) => {
startNumber = event.target.value
})
document.getElementById("end_number").addEventListener('change', (event) => {
endNumber = event.target.value
})
})