| | |
| | | |
| | | // 根据方案计算各工种薪资 |
| | | func salaryCalculate(parameter *SalaryParameter, salaryPlan *models.SalaryPlan) (string, decimal.Decimal) { |
| | | formula := strings.ReplaceAll(salaryPlan.SalaryFormula, " ", "") |
| | | formula := strings.ReplaceAll(salaryPlan.SalaryFormula, ",", "") |
| | | formula = strings.ReplaceAll(salaryPlan.SalaryFormula, " ", "") |
| | | //var SplitFixedField = []string{"日产丝量", "生丝单价", "桶数", "野纤数量", "野纤单价", "同组挡车工月平均工资", "同组车头工工资", "出勤天数"} |
| | | formula = strings.Replace(formula, "日产丝量*生丝单价", parameter.SilkTotalAmount.String(), -1) |
| | | formula = strings.Replace(formula, "野纤数量*野纤单价", parameter.BadSilkTotalAmount.String(), -1) |
| | |
| | | formula = strings.Replace(formula, "同组车头工工资", parameter.GroupCarHeadAvgAmount.String(), -1) |
| | | formula = strings.Replace(formula, "出勤天数", parameter.JobDays.String(), -1) |
| | | |
| | | logx.Debugf("salary formula: %v", formula) |
| | | |
| | | result, err := calculator.ParseAndExec(formula) |
| | | if err != nil { |
| | | logx.Errorf("%s : %v", formula, err) |