Browse Source

task_order

master
陈裕财 4 years ago
parent
commit
3bc19580d5
  1. 10
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java
  2. 117
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java
  3. 30
      xm-core/src/main/java/com/xm/core/vo/AddXmTaskOrderVo.java

10
xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java

@ -249,16 +249,6 @@ public class XmTaskController {
fields.add("parentTaskid");
fields.add("parentTaskname");
fields.add("executorUserid");
fields.add("oshare");
fields.add("shareFee");
fields.add("top");
fields.add("hot");
fields.add("urgent");
fields.add("topFee");
fields.add("hotFee");
fields.add("urgent");
fields.add("efunds");
fields.add("estate");
for (String fieldName : xmTaskMap.keySet()) {
if(fields.contains(fieldName)){
return ResponseHelper.failed(fieldName+"-no-edit",fieldName+"不允许修改");

117
xm-core/src/main/java/com/xm/core/ctrl/XmTaskOrderController.java

@ -1,32 +1,36 @@
package com.xm.core.ctrl;
import java.util.*;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.*;
import static com.mdp.core.utils.ResponseHelper.*;
import static com.mdp.core.utils.BaseUtils.*;
import com.mdp.core.entity.Tips;
import com.mdp.core.err.BizException;
import com.mdp.mybatis.PageUtils;
import com.mdp.core.utils.RequestUtils;
import com.mdp.core.utils.NumberUtil;
import com.mdp.core.utils.RequestUtils;
import com.mdp.core.utils.ResponseHelper;
import com.mdp.meta.client.entity.ItemVo;
import com.mdp.meta.client.service.ItemService;
import com.mdp.mybatis.PageUtils;
import com.mdp.safe.client.entity.User;
import com.mdp.safe.client.utils.LoginUtils;
import com.mdp.swagger.ApiEntityParams;
import com.xm.core.entity.XmTask;
import com.xm.core.entity.XmTaskOrder;
import com.xm.core.service.XmTaskOrderService;
import com.xm.core.service.XmTaskService;
import com.xm.core.vo.AddXmTaskOrderVo;
import io.swagger.annotations.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import com.xm.core.service.XmTaskOrderService;
import com.xm.core.entity.XmTaskOrder;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.mdp.core.utils.BaseUtils.toMap;
/**
* url编制采用rest风格,如对xm_task_order 任务相关费用订单表的操作有增删改查,对应的url分别为:<br>
@ -42,6 +46,12 @@ public class XmTaskOrderController {
@Autowired
private XmTaskOrderService xmTaskOrderService;
@Autowired
XmTaskService xmTaskService;
@Autowired
ItemService itemService;
Map<String,Object> fieldsMap = toMap(new XmTaskOrder());
@ -74,27 +84,71 @@ public class XmTaskOrderController {
}
/**
@ApiOperation( value = "新增一条任务相关费用订单表信息",notes=" ")
@ApiResponses({
@ApiResponse(code = 200,response=XmTaskOrder.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}")
})
@RequestMapping(value="/add",method=RequestMethod.POST)
public Map<String,Object> addXmTaskOrder(@RequestBody XmTaskOrder xmTaskOrder) {
public Map<String,Object> addXmTaskOrder(@RequestBody AddXmTaskOrderVo xmTaskOrder) {
Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功新增一条数据");
try{
boolean createPk=false;
if(!StringUtils.hasText(xmTaskOrder.getId())) {
createPk=true;
xmTaskOrder.setId(xmTaskOrderService.createKey("id"));
if(!StringUtils.hasText(xmTaskOrder.getTaskId())){
return ResponseHelper.failed("taskId-0","任务编号不能为空");
}
XmTask xmTaskDb=this.xmTaskService.selectOneById(xmTaskOrder.getTaskId());
if(xmTaskDb==null){
return ResponseHelper.failed("data-0","任务已不存在");
}
if(!"1".equals(xmTaskDb.getTaskOut())){
return ResponseHelper.failed("taskOut-0","不是外包任务,无须付款");
}
if(!"1".equals(xmTaskDb.getCrowd())){
return ResponseHelper.failed("taskOut-0","不是众包任务,无须付款");
}
if(!"1".equals(xmTaskDb.getTop()) && !"1".equals(xmTaskDb.getOshare()) && !"1".equals(xmTaskDb.getUrgent()) && !"1".equals(xmTaskDb.getCrmSup()) && !"1".equals(xmTaskDb.getHot()) && !"1".equals(xmTaskDb.getEstate())){
return ResponseHelper.failed("no-need-pay","该任务无须付款");
}
User user= LoginUtils.getCurrentUserInfo();
XmTaskOrder order=new XmTaskOrder();
BeanUtils.copyProperties(xmTaskDb,order);
order.setId(this.xmTaskOrderService.createKey("id"));
order.setTaskId(xmTaskDb.getId());
order.setUserid(user.getUserid());
order.setBranchId(user.getBranchId());
BigDecimal originFee=BigDecimal.ZERO;
if("1".equals(xmTaskDb.getEstate())){
order.setEfunds(xmTaskDb.getBudgetAt());
originFee=originFee.add(xmTaskDb.getBudgetAt());
}
ItemVo itemVo=itemService.getDict("sysParam","crowd_task_market");
if("1".equals(xmTaskDb.getTop())){
order.setTopFee(NumberUtil.getBigDecimal(itemVo.getExtInfo("topFee").getValue(),BigDecimal.ZERO));
order.setTopDays(NumberUtil.getInteger(itemVo.getExtInfo("topDays").getValue(),3));
originFee=originFee.add(order.getTopFee());
}
if("1".equals(xmTaskDb.getHot())){
order.setHotFee(NumberUtil.getBigDecimal(itemVo.getExtInfo("topFee").getValue(),BigDecimal.ZERO));
order.setHotDays(NumberUtil.getInteger(itemVo.getExtInfo("topDays").getValue(),3));
originFee=originFee.add(order.getTopFee());
}
if("1".equals(xmTaskDb.getTop())){
order.setTopFee(NumberUtil.getBigDecimal(itemVo.getExtInfo("topFee").getValue(),BigDecimal.ZERO));
order.setTopDays(NumberUtil.getInteger(itemVo.getExtInfo("topDays").getValue(),3));
originFee=originFee.add(order.getTopFee());
}
if("1".equals(xmTaskDb.getTop())){
order.setTopFee(NumberUtil.getBigDecimal(itemVo.getExtInfo("topFee").getValue(),BigDecimal.ZERO));
order.setTopDays(NumberUtil.getInteger(itemVo.getExtInfo("topDays").getValue(),3));
originFee=originFee.add(order.getTopFee());
}
if("1".equals(xmTaskDb.getTop())){
order.setTopFee(NumberUtil.getBigDecimal(itemVo.getExtInfo("topFee").getValue(),BigDecimal.ZERO));
order.setTopDays(NumberUtil.getInteger(itemVo.getExtInfo("topDays").getValue(),3));
originFee=originFee.add(order.getTopFee());
}
if(createPk==false){
if(xmTaskOrderService.selectOneObject(xmTaskOrder) !=null ){
return failed("pk-exists","编号重复,请修改编号再提交");
}
}
xmTaskOrderService.insert(xmTaskOrder);
m.put("data",xmTaskOrder);
}catch (BizException e) {
@ -107,7 +161,6 @@ public class XmTaskOrderController {
m.put("tips", tips);
return m;
}
*/
/**
@ApiOperation( value = "删除一条任务相关费用订单表信息",notes=" ")

30
xm-core/src/main/java/com/xm/core/vo/AddXmTaskOrderVo.java

@ -0,0 +1,30 @@
package com.xm.core.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 组织 com 顶级模块 xm 大模块 core 小模块 <br>
* 实体 XmTaskOrder所有属性名: <br>
* "userid","用户编号","branchId","公司ID-下单客户对应的企业","ostatus","订单状态0-初始,1-待确认,2-待付款,3-已付款,4-已完成,5-已取消-未付款前可取消,取消后可删除,6-退单-退单后变为已取消,8已关闭-售后完成后可以关闭订单","ctime","创建时间","ltime","更新时间","payType","支付方式","payStatus","支付状态0待付款,1已付款","payTime","支付时间","prepayId","第三方支付订单编号","id","订单编号","finalFee","最终总费用=origin_fee","othFee","其它费用","originFee","原始价格=top_fee+urgent_fee+crm_sup_fee+hot_fee+efunds+share_fee","payAt","最终付款金额-客户付款后回填","payAuthId","支付授权码","payOpenid","支付账户对应的第三方openid,注意,下单根付款不一定是同一个人","payUserid","付款用户编号","payUsername","付款用户名称","discount","折扣率0-199","topFee","置顶费用","topStime","置顶开始时间","topEtime","置顶结束时间","hotFee","热搜费用","hotStime","热搜开始时间","hotEtime","热搜结束时间","top","是否置顶0否1待付款2已开通3已过期","hot","是否热搜0否1待付款2已开通3已过期","crmSupFee","客服包办费用","urgentFee","加急费用","urgent","是否加急0否1待付款2已开通3已过期","crmSup","是否客服包办0否1待付款2已开通3已过期","efunds","托管金额","estate","资金托管状况0-无须托管,1-待付款,2-已托管资金,3-已付款给服务商,4-已退款","etoPlatTime","托管资金付款给平台的时间","etoDevTime","托管资金支付给服务商的时间","ebackTime","托管资金退回甲方时间","taskId","任务编号","topDays","置顶天数","hotDays","热搜天数","urgentDays","加急天数","urgentStime","加急开始时间","urgentEtime","加急结束时间","calcStatus","定时检查日期是否已过期,已过期则取消任务中的置顶、加急、热搜状态计算状态0-无须计算,1-本周期已计算待下周期计算,2-结束","calcTime","计算时间","oshare","是否开启分享赚0否1待付款2已开通3已过期","shareFee","分享赚佣金";<br>
* 当前主键(包括多主键):<br>
* id;<br>
*/
@Data
@ApiModel(description="任务相关费用订单表")
public class AddXmTaskOrderVo implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(notes="任务编号",allowEmptyValue=true,example="",allowableValues="")
String taskId;
/**
* 任务相关费用订单表
**/
public AddXmTaskOrderVo() {
}
}
Loading…
Cancel
Save