Skip to content

Instantly share code, notes, and snippets.

View chrisza4's full-sized avatar

Chakrit Likitkhajorn chrisza4

  • ThoughtWorks
  • Thailand
View GitHub Profile
@chrisza4
chrisza4 / todo.js
Last active December 12, 2016 17:09
Todo modules
export function permanentlyRemoveById (id) {
return Todo.remove({ _id: id})
}
export function removeById (id) {
return Todo.findByIdAndUpdate(id, { deleted: true })
}
export function isRoles (role, compareRoles) {
return roles.indexOf(role) >= 0
class Button extends React.Component {
// ....
}
@chrisza4
chrisza4 / Button.js
Last active December 30, 2016 14:36
class Button extends React.Component {
propTypes: {
type: React.PropTypes.oneOf([ 'checkbox', 'button' ]),
isChecked: React.PropTypes.bool
}
render () {
if (this.props.type === 'checkbox') {
//....
}
public class Receipt {
public DateTime Timestamp;
public string ReceiptNo;
public List<LineItem> Items;
public decimal CalculateSubTotal() {
return Items.sum(d => d.price);
}
}
public class PurchaseOrder extends Receipt {
public void PrintAndSendEmail(string toMail);
}
public class PurchaseOrder extends Receipt {
public void PrintAndSendEmail(string toMail);
public override decimal CalculateSubTotal() {
return super() * 1.07;
}
}
public class Invoice {
private bool isForXDepartment;
private bool isForYDepartment;
private bool isCalculateVat;
private bool isCalculateSpecialTax;
private double departmentYBudgetRatio;
private List<InvoiceItem> items;
public class InvoiceItem {
public class Invoice {
private bool isForXDepartment;
public Invoice(bool isForXDepartment) {
// บริษัทนี้ถ้าเป็นใบเสร็จของแผนก X จะต้องคำนวณภาษีและส่วนลดแบบพิเศษ
this.isForXDepartment = isForXDepartment;
}
public double calculateSumPrice () {
if (this.isForXDepartment) {
public class InvoiceDepartmentX {
private bool isForXDepartment; // ไม่จำเป็น เพราะเป็น X เสมอ
private bool isForYDepartment; // ไม่จำเป็น เพราะเป็น X เสมอ
private bool isCalculateVat;
private bool isCalculateSpecialTax;
private double departmentYBudgetRatio;
private List<InvoiceItem> items;
public class InvoiceItem {
public class InvoiceDepartmentX {
private List<InvoiceItem> items;
public class InvoiceItem {
public int quantity;
public string description;
public double pricePerUnit;
}