|
|
@@ -75,6 +75,65 @@ func (s CtrContractSaleTargetService) List(ctx context.Context, req *model.SaleT
|
|
|
return total, results, err
|
|
|
}
|
|
|
|
|
|
+// Edit 销售计划编辑(需要修改对应季度、年度计划,进而修改完成率)
|
|
|
+func (s CtrContractSaleTargetService) Edit(ctx context.Context, req *model.EditTargetReq) error {
|
|
|
+ if req.Target.Id == 0 {
|
|
|
+ return myerrors.TipsError("Id为空,操作失败")
|
|
|
+ }
|
|
|
+
|
|
|
+ // 统计 人/年度/月度金额
|
|
|
+ // 第一季度
|
|
|
+ req.Target.QuarterPlan1 = req.Target.Plan1 + req.Target.Plan2 + req.Target.Plan3
|
|
|
+ if req.Target.QuarterPlan1 != 0 {
|
|
|
+ req.Target.QuarterCompleteRatio1 = req.Target.QuarterComplete1 / req.Target.QuarterPlan1 * 100
|
|
|
+ }
|
|
|
+ // 第二季度
|
|
|
+ req.Target.QuarterPlan2 = req.Target.Plan4 + req.Target.Plan5 + req.Target.Plan6
|
|
|
+ if req.Target.QuarterPlan2 != 0 {
|
|
|
+ req.Target.QuarterCompleteRatio2 = req.Target.QuarterComplete2 / req.Target.QuarterPlan2 * 100
|
|
|
+ }
|
|
|
+ // 第三季度
|
|
|
+ req.Target.QuarterPlan3 = req.Target.Plan7 + req.Target.Plan8 + req.Target.Plan9
|
|
|
+ if req.Target.QuarterPlan3 != 0 {
|
|
|
+ req.Target.QuarterCompleteRatio3 = req.Target.QuarterComplete3 / req.Target.QuarterPlan3 * 100
|
|
|
+ }
|
|
|
+ // 年度
|
|
|
+ req.Target.YearPlan = req.Target.QuarterPlan1 + req.Target.QuarterPlan2 + req.Target.QuarterPlan3 + req.Target.Plan10 + req.Target.Plan11 + req.Target.Plan12
|
|
|
+ if req.Target.YearPlan != 0 {
|
|
|
+ req.Target.YearCompleteRatio = req.Target.YearComplete / req.Target.YearPlan * 100
|
|
|
+ }
|
|
|
+
|
|
|
+ // 更新数据
|
|
|
+ data := g.Map{
|
|
|
+ "plan1": req.Target.Plan1,
|
|
|
+ "plan2": req.Target.Plan2,
|
|
|
+ "plan3": req.Target.Plan3,
|
|
|
+ "plan4": req.Target.Plan4,
|
|
|
+ "plan5": req.Target.Plan5,
|
|
|
+ "plan6": req.Target.Plan6,
|
|
|
+ "plan7": req.Target.Plan7,
|
|
|
+ "plan8": req.Target.Plan8,
|
|
|
+ "plan9": req.Target.Plan9,
|
|
|
+ "plan10": req.Target.Plan10,
|
|
|
+ "plan11": req.Target.Plan11,
|
|
|
+ "plan12": req.Target.Plan12,
|
|
|
+ "quarter_plan1": req.Target.QuarterPlan1,
|
|
|
+ "quarter_plan2": req.Target.QuarterPlan2,
|
|
|
+ "quarter_plan3": req.Target.QuarterPlan3,
|
|
|
+ "year_plan": req.Target.YearPlan,
|
|
|
+ "quarter_complete_ratio1": req.Target.QuarterCompleteRatio1,
|
|
|
+ "quarter_complete_ratio2": req.Target.QuarterCompleteRatio2,
|
|
|
+ "quarter_complete_ratio3": req.Target.QuarterCompleteRatio3,
|
|
|
+ "year_complete_ratio": req.Target.YearCompleteRatio,
|
|
|
+ "updated_by": s.userInfo.Id,
|
|
|
+ "updated_name": s.userInfo.NickName,
|
|
|
+ "updated_time": gtime.Now(),
|
|
|
+ }
|
|
|
+ _, err := s.Dao.Update(data, fmt.Sprintf("id='%v'", req.Target.Id))
|
|
|
+
|
|
|
+ return err
|
|
|
+}
|
|
|
+
|
|
|
// Import excel数据导入
|
|
|
func (s CtrContractSaleTargetService) Import(ctx context.Context, req *model.ExcelImportReq) error {
|
|
|
validErr := gvalid.CheckStruct(ctx, req, nil)
|