| 123456789101112131415161718192021222324252627282930313233343536373839 | package materialimport "pss/config"func fetchMaterialCost(wid int) (m []MaterialCost, err error) {	if err := config.DB.Select(&m, "SELECT * FROM pss_materials_cost where warehouse_id = ? order by id asc", wid); err != nil {		if err.Error() == "sql: no rows in result set" {			return nil, nil		} else {			return nil, err		}	}	return m, nil}func getMaterialCost(id int) (m MaterialCost, err error) {	if err := config.DB.Get(&m, "SELECT * FROM pss_materials_cost where id = ?", id); err != nil {		if err.Error() == "sql: no rows in result set" {			return MaterialCost{}, nil		} else {			return MaterialCost{}, err		}	}	return m, nil}func deleteMaterialCostByWid(wid int) {	tx := config.DB.MustBegin()	defer tx.Commit()	tx.MustExec(tx.Rebind("delete from pss_materials_cost where warehouse_id = ?"), wid)}func batchSaveMaterialCost(mats []MaterialCost) error {	tx := config.DB.MustBegin()	defer tx.Commit()	sql := "INSERT INTO pss_materials_cost (warehouse_id, material_id, material_name, size, spec_id, spec_name, single_weight, single_price, single_price_per_kilogram, quantity, unit, total_weight, total_price, note, fix_single_price_per_kilogram, fix_single_price, fix_total_price) VALUES (:warehouse_id, :material_id, :material_name, :size, :spec_id, :spec_name, :single_weight, :single_price, :single_price_per_kilogram, :quantity, :unit, :total_weight, :total_price, :note, :fix_single_price_per_kilogram, :fix_single_price, :fix_total_price);"	_, err := tx.NamedExec(sql, mats)	return err}
 |