2016-11-09 57 views

回答

2

好吧,我正在回答我自己的問題,如果有人感興趣。

首先,您必須創建一個聯繫人組,以便對聯繫人進行分類(在代碼中爲「Tiny」,但您可以將其命名爲whish)。 其次,在創建聯繫人時,應該添加一個註釋,如;如果您希望聯繫人在2個月後或「1年」等期間被刪除,則需要「2個月」。該代碼僅實施幾個月和一年,但如果您需要另一個時間段(如幾天或幾周),則該代碼很容易修改。

下面的代碼:

function deleteTinyContacts() { 
var group = ContactsApp.getContactGroup("Tiny"); 
var contacts = ContactsApp.getContactsByGroup(group) 
var hoy = new Date(); 
Logger.log("today is " + hoy); 
Logger.log("total contacts to delete: " + contacts.length); 

for (var i = 0; i < contacts.length; i++) { 
var date = contacts[i].getLastUpdated(); 
Logger.log(contacts[i].getFullName() + " was updated last in " + date); 

var datediff = DateDiff.inMonths(date,hoy); 
Logger.log("contact updated " + datediff + " months ago"); 

var note = contacts[i].getNotes(); 
var res = note.split(" "); 
var Tmonths = calcMonths(res[1]); 
var todelete = res[0]*Tmonths; 
Logger.log("contact must be deleted after " + todelete + " months"); 

if (datediff>=todelete){ 
group.removeContact(contacts[i]);  
} 
} 
} 

var DateDiff = {  
inDays: function(d1, d2) { 
    var t2 = d2.getTime(); 
    var t1 = d1.getTime(); 

    return parseInt((t2-t1)/(24*3600*1000)); 
}, 
inWeeks: function(d1, d2) { 
    var t2 = d2.getTime(); 
    var t1 = d1.getTime(); 

    return parseInt((t2-t1)/(24*3600*1000*7)); 
}, 
inMonths: function(d1, d2) { 
    var d1Y = d1.getFullYear(); 
    var d2Y = d2.getFullYear(); 
    var d1M = d1.getMonth(); 
    var d2M = d2.getMonth(); 

    return (d2M+12*d2Y)-(d1M+12*d1Y); 
}, 
inYears: function(d1, d2) { 
    return d2.getFullYear()-d1.getFullYear(); 
} 
} 
function calcMonths(str){ 
if(str=="año"){return 12;} 
else if(str=="mes"){return 1;} 
} 
相關問題