|
|
@ -12,9 +12,14 @@ import com.ruoyi.common.utils.ShiroUtils; |
|
|
|
import com.ruoyi.common.utils.StringUtils; |
|
|
|
import com.ruoyi.process.general.service.IProcessService; |
|
|
|
import com.ruoyi.process.todoitem.mapper.BizTodoItemMapper; |
|
|
|
import com.ruoyi.sales.domain.SalesAftersalesNoticeDetail; |
|
|
|
import com.ruoyi.sales.domain.VO.SalesAftersalesNoticeVO; |
|
|
|
import com.ruoyi.sales.mapper.SalesAftersalesNoticeDetailMapper; |
|
|
|
import com.ruoyi.system.domain.SysMakeOrder; |
|
|
|
import com.ruoyi.system.domain.SysSalesOrder; |
|
|
|
import com.ruoyi.system.domain.SysSalesOrderChild; |
|
|
|
import com.ruoyi.system.domain.Vo.SelectAftersalesNoticeVO; |
|
|
|
import com.ruoyi.system.mapper.SysMakeOrderMapper; |
|
|
|
import com.ruoyi.system.mapper.SysSalesOrderChildMapper; |
|
|
|
import com.ruoyi.system.mapper.SysUserMapper; |
|
|
|
import com.ruoyi.system.service.ISysRoleService; |
|
|
@ -67,6 +72,12 @@ public class SalesAftersalesNoticeServiceImpl implements ISalesAftersalesNoticeS |
|
|
|
@Autowired |
|
|
|
private SysSalesOrderChildMapper sysSalesOrderChildMapper; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private SalesAftersalesNoticeDetailMapper aftersalesNoticeDetailMapper; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private SysMakeOrderMapper sysMakeOrderMapper; |
|
|
|
|
|
|
|
/** |
|
|
|
* 查询售后通知单 |
|
|
|
* |
|
|
@ -222,15 +233,36 @@ public class SalesAftersalesNoticeServiceImpl implements ISalesAftersalesNoticeS |
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
@Override |
|
|
|
public ProcessInstance submitApply(SalesAftersalesNotice salesAftersalesNotice) { |
|
|
|
|
|
|
|
|
|
|
|
public ProcessInstance submitApply(SysSalesOrder sysSalesOrder) { |
|
|
|
SysUser user = ShiroUtils.getSysUser(); |
|
|
|
String loginName = ShiroUtils.getLoginName(); |
|
|
|
SysMakeOrder sysMakeOrder = sysMakeOrderMapper.selectMakeOrderBySaleNo(sysSalesOrder.getSalesOrderCode()); |
|
|
|
SalesAftersalesNotice salesAftersalesNotice = new SalesAftersalesNotice(); |
|
|
|
// 审核状态-待审核
|
|
|
|
salesAftersalesNotice.setAuditStatus("0"); |
|
|
|
String aftersalesNoticeCode = redisCache.generateBillNo("SH"); |
|
|
|
salesAftersalesNotice.setApplyUser(user.getLoginName()); |
|
|
|
salesAftersalesNotice.setApplyTime(DateUtils.getNowDate()); |
|
|
|
salesAftersalesNotice.setAftersalesNoticeCode(redisCache.generateBillNo("SH")); |
|
|
|
salesAftersalesNotice.setAftersalesNoticeCode(aftersalesNoticeCode); |
|
|
|
salesAftersalesNotice.setMakeNo(sysMakeOrder.getMakeNo()); |
|
|
|
salesAftersalesNotice.setSalesOrderCode(sysSalesOrder.getSalesOrderCode()); |
|
|
|
salesAftersalesNotice.setEnterpriseCode(sysSalesOrder.getEnterpriseCode()); |
|
|
|
salesAftersalesNotice.setEnterpriseName(sysSalesOrder.getEnterpriseName()); |
|
|
|
salesAftersalesNotice.setCompanyAddress(sysSalesOrder.getDeliveryAddress()); |
|
|
|
salesAftersalesNotice.setCustomerContact(sysSalesOrder.getCustomerContact()); |
|
|
|
salesAftersalesNotice.setContactNumber(sysSalesOrder.getContactNumber()); |
|
|
|
salesAftersalesNotice.setRemark(sysSalesOrder.getRemark()); |
|
|
|
salesAftersalesNotice.setCreateBy(loginName); |
|
|
|
salesAftersalesNotice.setCreateTime(new Date()); |
|
|
|
// 保存
|
|
|
|
insertSalesAftersalesNotice(salesAftersalesNotice); |
|
|
|
|
|
|
|
List<SelectAftersalesNoticeVO> selectAftersalesNoticeVOList = sysSalesOrder.getSelectAftersalesNoticeVOList(); |
|
|
|
|
|
|
|
//插入售后通知单子表数据
|
|
|
|
insertAftersalesNoticeDetailByList(loginName, aftersalesNoticeCode, selectAftersalesNoticeVOList); |
|
|
|
|
|
|
|
|
|
|
|
// 启动流程
|
|
|
|
String applyTitle = user.getUserName()+"发起了售后单提交审批-"+DateUtils.dateTimeNow(); |
|
|
|
String instanceType = "submit"; |
|
|
@ -248,6 +280,27 @@ public class SalesAftersalesNoticeServiceImpl implements ISalesAftersalesNoticeS |
|
|
|
return processInstance; |
|
|
|
} |
|
|
|
|
|
|
|
private void insertAftersalesNoticeDetailByList(String loginName, String aftersalesNoticeCode, List<SelectAftersalesNoticeVO> selectAftersalesNoticeVOList) { |
|
|
|
for (SelectAftersalesNoticeVO selectAftersalesNoticeVO : selectAftersalesNoticeVOList) { |
|
|
|
SalesAftersalesNoticeDetail salesAftersalesNoticeDetail = new SalesAftersalesNoticeDetail(); |
|
|
|
salesAftersalesNoticeDetail.setAftersalesNoticeCode(aftersalesNoticeCode); |
|
|
|
salesAftersalesNoticeDetail.setMaterialNo(selectAftersalesNoticeVO.getMaterialNo()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialBrand(selectAftersalesNoticeVO.getMaterialBrand()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialName(selectAftersalesNoticeVO.getMaterialName()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialType(selectAftersalesNoticeVO.getMaterialType()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialUnit(selectAftersalesNoticeVO.getMaterialUnit()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialProcessMethod(selectAftersalesNoticeVO.getMaterialProcessMethod()); |
|
|
|
salesAftersalesNoticeDetail.setMaterialDescribe(selectAftersalesNoticeVO.getMaterialDescribe()); |
|
|
|
salesAftersalesNoticeDetail.setShippedGoodsSum(selectAftersalesNoticeVO.getShippedGoodsSum()); |
|
|
|
salesAftersalesNoticeDetail.setSnCode(selectAftersalesNoticeVO.getSnCode()); |
|
|
|
salesAftersalesNoticeDetail.setAftersalesProblem(selectAftersalesNoticeVO.getAftersalesProblem()); |
|
|
|
salesAftersalesNoticeDetail.setEmergencyDegree(selectAftersalesNoticeVO.getEmergencyDegree()); |
|
|
|
salesAftersalesNoticeDetail.setCreateBy(loginName); |
|
|
|
salesAftersalesNoticeDetail.setCreateTime(new Date()); |
|
|
|
aftersalesNoticeDetailMapper.insertSalesAftersalesNoticeDetail(salesAftersalesNoticeDetail); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 根据售后单号查询销售售后通知单 |
|
|
|
* */ |
|
|
|