Commit 0fa8ee79 authored by 黎聪聪's avatar 黎聪聪

2020年10月26日 10:23:24

parent 2c625c90
......@@ -61,10 +61,10 @@
<sql id="sqlColumns">
a.id,
a.consult_id,
CONVERT(AES_DECRYPT(a.user_name,'aideakey') USING UTF8),
CONVERT(AES_DECRYPT(a.number_id,'aideakey') USING UTF8),
CONVERT(AES_DECRYPT(a.user_name,'aideakey') USING UTF8) ,
CONVERT(AES_DECRYPT(a.number_id,'aideakey') USING UTF8) ,
a.sex,
CONVERT(AES_DECRYPT(a.iphone,'aideakey') USING UTF8),
CONVERT(AES_DECRYPT(a.iphone,'aideakey') USING UTF8) ,
a.past_records,
a.prescription,
a.doctor_id,
......
......@@ -244,7 +244,7 @@
// if($(this).val() == obj.provinceId){
// $(this).attr('selected', 'selected');
// }
clickAdd(obj.productId, obj.drugsNum, obj.price, obj.amount);
clickAdd(obj.id,obj.productId, obj.drugsNum, obj.price, obj.amount);
}
}
// $('#selectProduct option').each(function () {
......@@ -299,16 +299,22 @@
});
function clickAdd(id, count, price, amount) {
debugger
function clickAdd(id,productId, count, price, amount) {
var options = areaList.map(function (item) {
if (id && id != null && item.id === id) {
if (productId && productId != null && item.id === productId) {
return `<option selected value="${item.id}" data-price="${item.price}">${item.productName}</option>`
} else {
return `<option value="${item.id}" data-price="${item.price}">${item.productName}</option>`
}
}).join('')
console.log(options);
var idHtml = "";
if (id && id != null){
idHtml +=`<input type="hidden" name="idDetail" value="${id}">`
}else{
idHtml +=`<input type="hidden" name="idDetail" value="">`
}
var listHtml = "";
......@@ -344,6 +350,7 @@
let html = `<div id="form-translate" class="translate" style="display: flex ;margin-bottom: 30px">
${idHtml}
<select class="form-control" name="releas" style="width: 180px ;margin-right: 80px" onchange="getPrice(this)">
${options}
</select>
......@@ -380,14 +387,13 @@
var price = $(value).parent().find('input[name="htmlPrice"]').val()
var valueSi = $(value).val()
var totalPrice = valueSi * price;
$(value).parent().find('input[name="htmlAmount"]').val(totalPrice)
$(value).parent().find('input[name="htmlAmount"]').val(totalPrice.toFixed(2))
toTal()
}
function updatePrice(e) {
// var orderAmount = $("#orderAmount");
var valueSi = $(value).val();
console.log('lsss',valueSi)
// var sign = Math.floor(valueSi * 100 ) /100
$("#orderAmount").val(valueSi.toFixed(2));
......@@ -395,9 +401,9 @@
function deleteSelect(event) {
var dom = event.target;
var ret = $(dom);
console.log(ret.parent()+"ssss")
ret.parent().remove();
toTal()
}
function toTal() {
......@@ -408,17 +414,34 @@
$("#orderAmount").val(count.toFixed(2));
}
function save() {
$('.translate').each(function (index,item) {
const productId = $(item).find('[name="releas"]').val()
if($('.translate').find('[name="releas"]')[index].value==$('.translate').find('[name="releas"]')[index+1].value){
alert('商品名称不能重复')
}
})
// $('.translate').each(function (index,item) {
// const productId = $(item).find('[name="releas"]').val()
// if($('.translate').find('[name="releas"]')[index].value==$('.translate').find('[name="releas"]')[index+1].value){
// alert('商品名称不能重复')
// }
// })
var arr = []
var obj = {}
$('.translate').each((index, item) => {
var txt = $(item).find('[name="releas"]').val()
if (obj[txt]) {
arr.push(index)
return
} else {
obj[txt] = true
}
})
if (arr.length > 0) {
alert('商品名称不能重复')
return;
}
var id = $("#id").val()
var orderAmount = $("#orderAmount").val()
var datas = [];
$('.translate').each(function (index,item){
const idDetail = $(item).find('[name="idDetail"]').val()
const productId = $(item).find('[name="releas"]').val()
const drugsNum = $(item).find('[name="listHtml"]').val()
const price = $(item).find('[name="htmlPrice"]').val()
......@@ -426,6 +449,7 @@
console.log(item)
datas.push({
id : id,
idDetail : idDetail,
productId :productId,
drugsNum : drugsNum,
price : price,
......@@ -439,25 +463,17 @@
$.ajax({
url: url,
type: "POST",
dateType:'json',
headers:{"Accept": "application/json; charset=utf-8"},
data : {_csrf:csrf,_csrf_header:csrf_header,"datas":JSON.stringify(datas)},
success :function (rsp) {
if(rsp.aaData == 1){
Cfapp.alert({
message: "修改成功",
btntext: "确定",
success: function () {
location.href = "#springUrl('/a/order/list')";
}
});
if(rsp.errorNO == "0"){
console.log(rsp.errorNO)
alert("修改成功")
location.href = "#springUrl('/a/order/list')";
}else{
Cfapp.alert({
message: "修改失败",
btntext: "确定",
success: function () {
location.href = "#springUrl('/a/order/from')";
}
});
alert("修改失败")
location.href = "#springUrl('/a/order/list')";
}
}
......
......@@ -20,12 +20,12 @@ public interface OrderMapper extends GenericDao<Order> {
List<ProductOrder> listProduct();
OrderFromVO fetchId(Serializable id);
List<OrderFromVO> fetchProductId(Serializable id);
ProductDto fetchProduct(Map<String, Object> params);
Integer saveDetill(OrderDetail orderDetail);
ProductDto fetchProduct(Map<String,Object> params);
Integer saveDetill(OrderDetailDto orderDetailDto);
Integer fetcheDeta(Map<String, Object> params);
Long updateDetill(Map<String, Object> params);
Integer updateDetill(Map<String, Object> params);
Order fetchOrder(Long id);
Long updateOrder(Map<String, Object> params);
Integer updateOrder(Map<String, Object> params);
}
\ No newline at end of file
......@@ -142,6 +142,7 @@
CONCAT( a.areaname, b.areaname, c.areaname, s.address ) AS address
</sql>
<sql id="sqlColumnProduct">
d.id,
d.order_id,
t.product_number AS productNumber,
t.product_name AS productName,
......@@ -152,7 +153,6 @@
</sql>
<sql id="Column">
id,
order_id,
order_code,
drugs_id,
......@@ -162,15 +162,8 @@
amount,
drugs_code,
drugs_sku,
drugs_materiel,
accounts_id,
del_flag,
status,
create_time,
update_time,
description,
create_by,
update_by
accounts_id
</sql>
......@@ -201,13 +194,12 @@
#{delFlag, jdbcType=TINYINT},
#{status, jdbcType=VARCHAR},
now(),
now(),
#{description, jdbcType=VARCHAR},
#{createBy, jdbcType=BIGINT},
#{updateBy, jdbcType=BIGINT}
now()
)
</insert>
<select id="fetchId" parameterType="java.lang.Long" resultType="com.cftech.order.model.OrderFromVO">
SELECT
<include refid="sqlColumnFrom"/>
......@@ -344,35 +336,19 @@
<select id="fetchProduct" resultType="com.cftech.order.model.ProductDto" parameterType="java.util.Map">
SELECT * FROM t_aidea_product WHERE id = #{productId} AND accounts_id=#{accountsId}
</select>
<update id="updateDetill" parameterType="java.util.Map">
update t_order_details
<set>
<if test="productId != null">
drugs_id = #{productId},
</if>
<if test="drugsNum != null">
drugs_num = #{drugsNum},
</if>
<if test="price != null">
price = #{price},
</if>
<if test="amount != null">
amount = #{amount},
</if>
</set>
where order_id =#{id} and accounts_id=#{accountsId}
</update>
<delete id="updateDetill" parameterType="java.util.Map">
delete from t_order_details where order_id = #{id}
</delete>
<select id="fetcheDeta" parameterType="java.util.Map" resultType="java.lang.Integer">
select * from t_order_details where order_id =#{id} and accounts_id=#{accountsId} and drugs_id =#{productId}
</select>
<select id="saveDetill" parameterType="com.cftech.order.model.OrderDetail" resultType="java.lang.Integer">
<insert id="saveDetill" parameterType="com.cftech.order.model.OrderDetailDto" >
insert into t_order_details
(
<include refid="Column"/>
)
values
(
now(),
#{orderId},
#{orderCode},
#{drugsId},
......@@ -382,17 +358,9 @@
#{amount},
#{drugsCode},
#{drugsSku},
#{drugsMateriel},
#{accountsId},
0,
now(),
#{createTime},
#{updateTime},
now(),
#{createBy},
#{updateBy}
#{accountsId}
)
</select>
</insert>
<select id="fetchOrder" resultType="com.cftech.order.model.Order" parameterType="java.lang.Long">
select * from t_order where id= #{id}
</select>
......
package com.cftech.order.model;
import lombok.Data;
/**
* @author :licc
* @date :Created in 2020/10/23 15:47
* @description:
*/
@Data
public class OrderDetailDto {
/* 订单id */
private Long orderId;
/* 订单编码 */
private String orderCode;
/* 商品id */
private Long drugsId;
private Long drugsNum;
private String openid;
/* 商品价格 */
private Double price;
/* 商品总价 */
private Double amount;
/* 商品编码 */
private String drugsCode;
/* 商品sku(规格) */
private String drugsSku;
/* 所属的账号 */
private Long accountsId;
}
......@@ -7,6 +7,7 @@ import com.cftech.order.model.Order;
import com.cftech.core.generic.GenericService;
import com.cftech.order.model.OrderFromVO;
import com.cftech.order.model.ProductOrder;
import com.qiniu.util.Json;
import java.io.Serializable;
import java.util.List;
......@@ -26,5 +27,5 @@ public interface OrderService extends GenericService<Order> {
OrderFromVO fetchId(Serializable id);
List<OrderFromVO> fetchProductId(Serializable id);
Long newlyAdded(String datas,Long accountsId);
JSONObject newlyAdded(String datas, Long accountsId);
}
......@@ -11,6 +11,7 @@ import com.cftech.core.sql.Conds;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.xmlbeans.impl.xb.xsdschema.Public;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
......@@ -70,57 +71,65 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
@Transactional
@Override
public Long newlyAdded(String datas, Long accountsId) {
OrderDetail orderDetail = null;
public com.alibaba.fastjson.JSONObject newlyAdded(String datas, Long accountsId) {
com.alibaba.fastjson.JSONObject rtnJson = new com.alibaba.fastjson.JSONObject();
OrderDetailDto orderDetailDto = null;
Map<String, Object> params = new HashMap<String, Object>();;
datas = datas.replaceAll("&quot;","\"");
JSONArray jsonArray = JSONArray.fromObject(datas);
if (jsonArray.size()>0){
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
long id = jsonObject.getLong("id");
long productId = jsonObject.getLong("productId");
long drugsNum = jsonObject.getLong("drugsNum");
double price = jsonObject.getDouble("price");
double amount = jsonObject.getDouble("amount");
double orderAmount = jsonObject.getDouble("orderAmount");
params.put("id",id);
params.put("accountsId",accountsId);
params.put("productId",productId);
params.put("drugsNum",drugsNum);
params.put("price",price);
params.put("amount",amount);
Integer fetcheDeta = orderMapper.fetcheDeta(params);
if (fetcheDeta>0 || fetcheDeta!=null){
orderMapper.updateDetill(params);
}else {
ProductDto productDtos = orderMapper.fetchProduct(params);
orderDetail = new OrderDetail();
Order orders = orderMapper.fetchOrder(id);
orderDetail.setOrderId(id);
orderDetail.setOrderCode(orders.getOrderCode());
orderDetail.setDrugsId(productDtos.getId());
orderDetail.setOpenid(orders.getOpenid());
orderDetail.setPrice(productDtos.getPrice());
orderDetail.setAmount(amount);
orderDetail.setDrugsCode(productDtos.getProductNumber());
orderDetail.setDrugsSku(productDtos.getFormat());
orderDetail.setAccountsId(accountsId);
Integer detill = orderMapper.saveDetill(orderDetail);
if (detill>0){
orderMapper.updateOrder(params);
boolean isAnim = false;
try {
if (jsonArray.size()>0){
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
long id = jsonObject.getLong("id");
String idDetail = jsonObject.getString("idDetail");
long productId = jsonObject.getLong("productId");
long drugsNum = jsonObject.getLong("drugsNum");
double price = jsonObject.getDouble("price");
double amount = jsonObject.getDouble("amount");
double orderAmount = jsonObject.getDouble("orderAmount");
params.put("id",id);
params.put("accountsId",accountsId);
params.put("productId",productId);
params.put("drugsNum",drugsNum);
params.put("price",price);
params.put("amount",amount);
params.put("orderAmount",orderAmount);
params.put("idDetail",idDetail);
if (!isAnim){
orderMapper.updateDetill(params);
isAnim = true;
}
ProductDto productDtos = orderMapper.fetchProduct(params);
orderDetailDto = new OrderDetailDto();
Order orders = orderMapper.fetchOrder(id);
orderDetailDto.setOrderId(id);
orderDetailDto.setOrderCode(orders.getOrderCode());
orderDetailDto.setDrugsId(productDtos.getId());
orderDetailDto.setOpenid(orders.getOpenid());
orderDetailDto.setPrice(productDtos.getPrice());
orderDetailDto.setAmount(amount);
orderDetailDto.setDrugsNum(drugsNum);
orderDetailDto.setDrugsCode(productDtos.getProductNumber());
orderDetailDto.setDrugsSku(productDtos.getFormat());
orderDetailDto.setAccountsId(accountsId);
Integer detill = orderMapper.saveDetill(orderDetailDto);
if (detill>0){
Integer integer = orderMapper.updateOrder(params);
if (integer>0){
rtnJson.put("errorNO","0");
}
}
}
}
}catch (Exception e){
e.printStackTrace();
rtnJson.put("errorNO","1");
}
// Long detill = orderMapper.updateDetill(id, productId, drugsNum, price, amount, accountsId);
// List<ProductDto> productDtos = orderMapper.fetchProduct(productId, accountsId);
// List<Order> orders = orderMapper.fetchOrder(id);
// orderDetail.setOrderId(id);
return null;
return rtnJson;
}
......
......@@ -95,18 +95,13 @@ public class OrderController {
//提交数据(新增、修改)
@RequiresPermissions(value = ORDER_EDIT)
@PostMapping("/formData")
@PostMapping(value = "/formData", produces = {"application/json;charset=utf-8"})
@ResponseBody
public JSONObject formData(HttpServletRequest request,String datas) {
Long accountsId = UserUtils.getmpaccounts(request);
JSONObject rtnJson = new JSONObject();
Long aLong = orderService.newlyAdded(datas,accountsId);
if (aLong>0 && aLong!=null){
rtnJson.put("aaData", 1);
}
rtnJson.put("aaData", 0);
return rtnJson;
JSONObject jsonObject = orderService.newlyAdded(datas, accountsId);
System.out.println(jsonObject);
return jsonObject;
}
//获取列表数据
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment