调整synctask功能

dev
lisai17@sina.com 2020-10-18 00:20:28 +08:00
parent b8cfd0453b
commit 9fa6ec6953
73 changed files with 657 additions and 411 deletions

View File

@ -183,15 +183,27 @@ public class ModifyLogService {
sqlparams.add("?");
params.add(obj.get("id"));
} else if (modify_type.contains("manualWeight_" + Enums.CtrlFlowEnum.R.name())) {
String first_weight = String.format("%.2f", obj.getBigDecimal("first_weight"));
String first_weight_old = String.format("%.2f", obj.getBigDecimal("first_weight_old"));
record.set("content", "手动将入场重量由 " + first_weight_old + " 改为:" + first_weight);
String first_weight = String.format("%.2f", obj.getBigDecimal("first_weight"));
if (obj.get("first_weight_old") != null) {
String first_weight_old = String.format("%.2f", obj.getBigDecimal("first_weight_old"));
record.set("content", "手动将入场重量由 " + first_weight_old + " 改为:" + first_weight);
} else {
record.set("content", "手动设定入场重量 " + first_weight);
}
sqlparams.add("?");
params.add(obj.get("id"));
} else if (modify_type.contains("manualWeight_" + Enums.CtrlFlowEnum.C.name())) {
String second_weight = String.format("%.2f", obj.getBigDecimal("second_weight"));
String second_weight_old = String.format("%.2f", obj.getBigDecimal("second_weight_old"));
record.set("content", "手动将出场重量由 " + second_weight_old + " 改为:" + second_weight);
String second_weight = String.format("%.2f", obj.getBigDecimal("second_weight"));
if (obj.get("second_weight_old") != null) {
String second_weight_old = String.format("%.2f", obj.getBigDecimal("second_weight_old"));
record.set("content", "手动将出场重量由 " + second_weight_old + " 改为:" + second_weight);
} else {
record.set("content", "手动设定出场重量 " + second_weight);
}
sqlparams.add("?");
params.add(obj.get("id"));
}
@ -201,7 +213,7 @@ public class ModifyLogService {
}
}
if(!params.isEmpty()){
if (!params.isEmpty()) {
List<Transport> transports = Transport.dao.find("select * from transport t where t.id in(" + StrKit.join(sqlparams, ",") + ")", params.toArray());
for (Record record : list) {

View File

@ -9,6 +9,7 @@ import com.jfinal.kit.StrKit;
import com.jfinal.log.Log;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.IAtom;
import java.util.Date;
/**
@ -36,17 +37,26 @@ public class ActionCmdLogSyncService extends BaseSyncService {
cmd.setCreateTime(new Date());
cmd.setContent(content);
return Db.tx(new IAtom() {
SyncTask synctask = new SyncTask();
synctask.addSaveData(cmd);
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run(){
try{
return cmd.save() && SyncTaskService.me.save(new SyncTask().addSaveData(cmd));
}catch (Exception e){
public boolean run() {
try {
return cmd.save() && SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
}
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret;
}
}

View File

@ -62,7 +62,7 @@ public class AuthLicenseController extends BaseController {
renderJson(Result.object(AuthLicenseService.me.find(pp, truck_license, stm, etm)));
}
public void batchDel(){
public void batchDel() {
Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token"));
if (tokenuser == null) {

View File

@ -74,7 +74,7 @@ public class AuthLicenseSyncService extends BaseService {
synctask.addSaveData(entry.getValue());
}
Db.tx(new IAtom() {
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
@ -85,14 +85,17 @@ public class AuthLicenseSyncService extends BaseService {
log.debug("auth_license 插入[" + map.size() + "]条");
SyncTaskService.me.save(synctask);
return true;
return SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
}
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
}
}
@ -109,13 +112,14 @@ public class AuthLicenseSyncService extends BaseService {
return;
}
Db.tx(new IAtom() {
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
SyncTask synctask = new SyncTask();
int size = 500;
int page = Math.round(cnt.floatValue() / size);
int size = 500;
int page = Math.round(cnt.floatValue() / size);
for (int p = 0; p < page; p++) {
int start = size * p;
int end = p + 1;
@ -160,6 +164,10 @@ public class AuthLicenseSyncService extends BaseService {
}
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
}
public Result batchDel(String trucks, Sysuser sysuser) {
@ -173,8 +181,8 @@ public class AuthLicenseSyncService extends BaseService {
return Result.failed("必须传入有效的车牌");
}
Object[][] parms = new Object[arr.length][1];
SyncTask synctask = new SyncTask();
Object[][] parms = new Object[arr.length][1];
SyncTask synctask = new SyncTask();
for (int i = 0; i < arr.length; i++) {
String license = arr[i];
@ -199,6 +207,10 @@ public class AuthLicenseSyncService extends BaseService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success() : Result.failed("批量删除失败");
}

View File

@ -39,12 +39,21 @@ public class BaseSyncService extends BaseService {
return Result.failed(false, "主键冲突");
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return model.save()
&& SyncTaskService.me.save(new SyncTask().addSaveData(model))
boolean ret = model.save();
if (!ret) {
return false;
}
synctask.addSaveData(model); // 有自增长主键的,在保存 model 后会自动填充主键的值,然后才能加到 synctask 里面
return SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(model, null, Enums.DataOpType.SAVE.getId(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -53,6 +62,10 @@ public class BaseSyncService extends BaseService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.object(model) : Result.failed(false, "新增失败");
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -82,12 +95,21 @@ public class BaseSyncService extends BaseService {
return Result.failed(false, "按主键未找到对应记录");
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return model.delete()
&& SyncTaskService.me.save(new SyncTask().addDeleteData(model))
boolean ret = model.delete();
if (!ret) {
return false;
}
synctask.addDeleteData(model);
return SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(model, (BaseModel) model.findByPk(), Enums.DataOpType.DELETE.getId(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -96,6 +118,10 @@ public class BaseSyncService extends BaseService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return Result.object(ret);
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -126,12 +152,21 @@ public class BaseSyncService extends BaseService {
oldobj.set(key, model.get(key));
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return oldobj.update()
&& SyncTaskService.me.save(new SyncTask().addUpdateData(oldobj))
boolean ret = oldobj.update();
if (!ret) {
return false;
}
synctask.addUpdateData(oldobj);
return SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(model, saveold, Enums.DataOpType.UPDATE.getId(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -140,6 +175,10 @@ public class BaseSyncService extends BaseService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.object(oldobj) : Result.failed(false, "修改失败");
} catch (Exception e) {
log.error(e.getMessage(), e);

View File

@ -26,7 +26,7 @@ public class BlacklistController extends BaseController {
* data = false
*/
@Before(BlacklistPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Blacklist model = getModel(Blacklist.class, "", true); // 忽略不在model中的字段
renderJson(BlacklistService.me.checkExistsByPk(model));
}
@ -35,7 +35,7 @@ public class BlacklistController extends BaseController {
* blacklist -
*/
@Before(BlacklistValidator.class)
public void save(){
public void save() {
Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token"));
if (tokenuser == null) {
@ -50,9 +50,9 @@ public class BlacklistController extends BaseController {
/**
* blacklist -
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String truck_license = getUpperCaseVal("truck_license");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String truck_license = getUpperCaseVal("truck_license");
renderJson(Result.object(BlacklistService.me.find(pp, truck_license)));
}
@ -60,7 +60,7 @@ public class BlacklistController extends BaseController {
* blacklist -
*/
@Before(BlacklistPKValidator.class)
public void findByPk(){
public void findByPk() {
Blacklist model = getModel(Blacklist.class, "", true); // 忽略不在model中的字段
renderJson(BlacklistSyncService.me.findByPk(model));
}
@ -69,7 +69,7 @@ public class BlacklistController extends BaseController {
* blacklist -
*/
@Before(BlacklistPKValidator.class)
public void get(){
public void get() {
Blacklist model = getModel(Blacklist.class, "", true); // 忽略不在model中的字段
renderJson(BlacklistSyncService.me.findByPk(model));
}
@ -77,13 +77,13 @@ public class BlacklistController extends BaseController {
/**
* blacklist -
*/
public void list(){
public void list() {
renderJson(Result.object(BlacklistService.me.list()));
}
@Before(BlacklistPKValidator.class)
public void remove(){
public void remove() {
Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token"));
if (tokenuser == null) {

View File

@ -23,7 +23,7 @@ public class BlacklistSyncService extends BaseSyncService {
" where t.remove_user_id is null \n" +
" and t.truck_license = ? ", model.getTruckLicense());
if(oldmodel != null){
if (oldmodel != null) {
return Result.failed("【" + model.getTruckLicense() + "】还在黑名单中,未移除");
}
@ -70,6 +70,10 @@ public class BlacklistSyncService extends BaseSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.object(model) : Result.failed(false, "新增失败");
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -84,6 +88,7 @@ public class BlacklistSyncService extends BaseSyncService {
/**
*
*
*
* @param id
* @param sysuser
* @return
@ -136,6 +141,10 @@ public class BlacklistSyncService extends BaseSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.object(model) : Result.failed(false, "修改失败");
} catch (Exception e) {
log.error(e.getMessage(), e);

View File

@ -15,10 +15,10 @@ public class CacheController extends Controller {
/**
*
*/
public void reload(){
public void reload() {
Supermarket s = Supermarket.dao.findById(Config.configprop.getInt("current.supermarket_id"));
if(s == null) {
if (s == null) {
renderJson(Result.failed("没有获取到有效的砂站信息,检查配置是否正确"));
return;
}

View File

@ -37,7 +37,7 @@ public class CustomerController extends Controller {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
Integer type = getInt("type");
Integer type = getInt("type");
renderJson(Result.object(CustomerService.me.find(pp, name, del, type)));
}

View File

@ -23,7 +23,7 @@ public class CustomerContactController extends Controller {
* data = false
*/
@Before(CustomerContactPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
CustomerContact model = getModel(CustomerContact.class, "", true); // 忽略不在model中的字段
renderJson(CustomerContactService.me.checkExistsByPk(model));
}
@ -31,12 +31,12 @@ public class CustomerContactController extends Controller {
/**
* customer_contact -
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
Integer customer_id = getInt("customer_id");
String name = get("name");
Integer del = getInt("del");
String phone = get("phone");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
Integer customer_id = getInt("customer_id");
String name = get("name");
Integer del = getInt("del");
String phone = get("phone");
renderJson(Result.object(CustomerContactService.me.find(pp, customer_id, name, phone, del)));
}
@ -44,7 +44,7 @@ public class CustomerContactController extends Controller {
* customer_contact -
*/
@Before(CustomerContactPKValidator.class)
public void findByPk(){
public void findByPk() {
CustomerContact model = getModel(CustomerContact.class, "", true); // 忽略不在model中的字段
renderJson(CustomerContactService.me.findByPk(model));
}
@ -53,7 +53,7 @@ public class CustomerContactController extends Controller {
* customer_contact -
*/
@Before(CustomerContactPKValidator.class)
public void get(){
public void get() {
CustomerContact model = getModel(CustomerContact.class, "", true); // 忽略不在model中的字段
renderJson(CustomerContactService.me.findByPk(model));
}
@ -61,7 +61,7 @@ public class CustomerContactController extends Controller {
/**
* customer_contact -
*/
public void list(){
public void list() {
Integer customer_id = getInt("customer_id");
renderJson(Result.object(CustomerContactService.me.list(customer_id)));
}

View File

@ -62,10 +62,10 @@ public class CustomerReceiverController extends Controller {
* customer_receiver -
*/
public void list() {
Integer customer_id = getInt("customer_id");
String name = get("name");
Integer supermarket_id = getInt("supermarket_id");
String phone = get("phone");
Integer customer_id = getInt("customer_id");
String name = get("name");
Integer supermarket_id = getInt("supermarket_id");
String phone = get("phone");
renderJson(Result.object(CustomerReceiverService.me.list(customer_id, name, phone, supermarket_id)));
}
}

View File

@ -176,7 +176,7 @@ public class OutController extends Controller implements Runnable {
if (weight > 0) {
log.debug("%s 【%s】称重结果【%s】", getWhich(), pair.license, weight);
break;
}else{
} else {
// 读数错误,断开连接,下次读取时重连
getScale().disconnect();
}

View File

@ -9,10 +9,10 @@ import java.util.concurrent.locks.ReentrantLock;
import java.util.regex.Pattern;
public abstract class AbsScale extends Device {
private static Log log = Log.getLog(AbsScale.class);
private static Log log = Log.getLog(AbsScale.class);
private ReentrantLock lock = new ReentrantLock();
protected Socket socket;
public static Pattern pattern = Pattern.compile("(\\d+\\.?\\d*)");
public static Pattern pattern = Pattern.compile("(\\d+\\.?\\d*)");
public AbsScale(String id, String ip, int port) {
super(id, ip, port);
@ -26,10 +26,10 @@ public abstract class AbsScale extends Device {
socket.connect(new InetSocketAddress(getIp(), getPort()), 5000);
return true;
}catch (Exception e){
if(e.getMessage().contains("connect timed out")){
} catch (Exception e) {
if (e.getMessage().contains("connect timed out")) {
log.error("Scale %s %s 连接超时", getId(), getIp());
}else{
} else {
log.error(e.getMessage(), e);
}
return false;
@ -45,7 +45,7 @@ public abstract class AbsScale extends Device {
public void disconnect() {
try {
log.debug("销毁称重连接");
if(socket != null){
if (socket != null) {
socket.close();
socket = null;
}

View File

@ -7,7 +7,7 @@ public class Camera extends Device {
private Controller controller;
private boolean isconnected = false;
private long keeptime = 0;
private long keeptime = 0;
public Camera(String id, String ip) {
super(id, ip);

View File

@ -10,6 +10,7 @@ import com.jfinal.core.Controller;
import com.jfinal.kit.HttpKit;
import com.jfinal.kit.StrKit;
import com.jfinal.log.Log;
import java.io.File;
@Clear(AuthInterceptor.class)
@ -104,28 +105,28 @@ public class CameraController extends Controller {
try {
String str = HttpKit.readData(getRequest());
if(StrKit.isBlank(str)){
if (StrKit.isBlank(str)) {
renderJson(new JSONObject().fluentPut("ret", false).fluentPut("msg", "readData 解析失败"));
return;
}
JSONObject json = JSONObject.parseObject(str);
JSONObject json = JSONObject.parseObject(str);
if(json == null){
if (json == null) {
renderJson(new JSONObject().fluentPut("ret", false).fluentPut("msg", "parseObject 解析失败"));
return;
}
String romid = null;
String sn = null;
String ipaddr = null;
String romid = null;
String sn = null;
String ipaddr = null;
if (json.containsKey("KeepAlive")) { // 心跳数据
JSONObject keepAlive = json.getJSONObject("KeepAlive");
ipaddr = keepAlive.getString("ipaddr");
sn = keepAlive.getString("SN");
romid = keepAlive.getString("ROMID");
sn = keepAlive.getString("SN");
romid = keepAlive.getString("ROMID");
Camera camera = Config.deviceThread.getCameraByIp(ipaddr);
@ -146,15 +147,15 @@ public class CameraController extends Controller {
String license = plateResult.getString("license");
String imageFile = plateResult.getString("imageFile");
if(StrKit.isBlank(license)){
if (StrKit.isBlank(license)) {
log.error("无效车牌:【%s】", license);
renderJson(new JSONObject().fluentPut("ret", false).fluentPut("msg", "无效车牌"));
return;
}
ipaddr = alarmInfoPlate.getString("ipaddr");
sn = alarmInfoPlate.getString("sn");
romid = alarmInfoPlate.getString("romid");
sn = alarmInfoPlate.getString("sn");
romid = alarmInfoPlate.getString("romid");
File jpgFile = new File(
String.format("%s%s%s-%d.jpg",
@ -180,12 +181,12 @@ public class CameraController extends Controller {
log.debug("识别成功:%s, %s", license, jpgFile);
if(camera != null){
if (camera != null) {
camera.getController().onLicenseResult(license, jpgFile); // 识别到图片,回调
}else{
} else {
log.error("摄像头配置异常 %s", ipaddr);
}
}else {
} else {
log.debug("无效 json 数据 %s", json.toJSONString());
}

View File

@ -5,7 +5,7 @@ import java.io.IOException;
public abstract class Device {
private String id;
private String ip;
private int port;
private int port;
public Device(String id, String ip) {
this.id = id;
@ -13,8 +13,8 @@ public abstract class Device {
}
public Device(String id, String ip, int port) {
this.id = id;
this.ip = ip;
this.id = id;
this.ip = ip;
this.port = port;
}

View File

@ -14,8 +14,8 @@ import java.util.Date;
import java.util.concurrent.locks.ReentrantLock;
public class LED extends Device {
private static Log log = Log.getLog(LED.class);
private static String textFormat = "%s\\n%s\\n%s";
private static Log log = Log.getLog(LED.class);
private static String textFormat = "%s\\n%s\\n%s";
private static final ThreadLocal<SimpleDateFormat> sdf = new ThreadLocal<SimpleDateFormat>() {
protected SimpleDateFormat initialValue() {
@ -23,8 +23,8 @@ public class LED extends Device {
}
};
private ReentrantLock lock = new ReentrantLock();
protected Socket socket;
private ReentrantLock lock = new ReentrantLock();
protected Socket socket;
public LED(String id, String ip, int port) {
super(id, ip, port);
@ -38,7 +38,7 @@ public class LED extends Device {
}
// 重连一次
if(!isConnected()){
if (!isConnected()) {
connect();
}
@ -57,7 +57,7 @@ public class LED extends Device {
System.arraycopy(packetHead, 0, msg, frameHead.length, packetHead.length);
// System.out.println(HexDump.toHex(msg));
int areaLen = b.length - 9 + dataLen;
b[7] = (byte) areaLen;
b[7] = (byte) areaLen;
b[32] = (byte) dataLen;
System.arraycopy(b, 0, msg, packetHead.length + frameHead.length, b.length);
// System.out.println(HexDump.toHex(msg));
@ -84,9 +84,9 @@ public class LED extends Device {
InputStream in = socket.getInputStream();
byte[] buf = new byte[in.available()];
in.read(buf);
BufferedInputStream bis = new BufferedInputStream(socket.getInputStream());
byte[] y = new byte[128];
int read = bis.read(y);
BufferedInputStream bis = new BufferedInputStream(socket.getInputStream());
byte[] y = new byte[128];
int read = bis.read(y);
while (!(read > 0)) {
read = bis.read(y);
}
@ -192,7 +192,7 @@ public class LED extends Device {
public void disconnect() {
try {
log.debug("销毁LED连接");
if(socket != null){
if (socket != null) {
socket.close();
}
} catch (Exception e) {

View File

@ -159,9 +159,10 @@ public class LEDThread extends Device implements Runnable {
} catch (Exception e) {
if (e.getMessage().contains("Socket is not connected")) {
log.error("LED %s %s 连接已断开", getId(), getIp());
} if(e.getMessage().contains("Read timed out")){
}
if (e.getMessage().contains("Read timed out")) {
log.error("LED %s %s 连接超时", getId(), getIp());
}else {
} else {
log.error(e.getMessage(), e);
}

View File

@ -85,10 +85,10 @@ public class PLC extends Device {
log.debug("plc连接成功");
return true;
}catch (Exception e){
if(e.getMessage().contains("connect timed out")){
} catch (Exception e) {
if (e.getMessage().contains("connect timed out")) {
log.error("PLC %s %s 连接超时", getId(), getIp());
}else{
} else {
log.error(e.getMessage(), e);
}
} finally {
@ -158,7 +158,7 @@ public class PLC extends Device {
frame[11] = data;
socket.getOutputStream().write(frame);
}else{
} else {
log.error("PLC 未找到指令【%s】", address);
}
} finally {

View File

@ -11,7 +11,7 @@ public class Printer {
private ReentrantLock lock = new ReentrantLock(true);
public Printer(String ip, int port) {
this.ip = ip;
this.ip = ip;
this.port = port;
}
@ -33,13 +33,13 @@ public class Printer {
FileInputStream fis = new FileInputStream(file);
OutputStream out = socket.getOutputStream();
int l1 = (int) (file.length() >> 56);
int l2 = (int) (file.length() >> 48);
int l3 = (int) (file.length() >> 40);
int l4 = (int) (file.length() >> 32);
int l5 = (int) (file.length() >> 24);
int l6 = (int) (file.length() >> 16);
int l7 = (int) (file.length() >> 8);
int l8 = (int) file.length();
int l2 = (int) (file.length() >> 48);
int l3 = (int) (file.length() >> 40);
int l4 = (int) (file.length() >> 32);
int l5 = (int) (file.length() >> 24);
int l6 = (int) (file.length() >> 16);
int l7 = (int) (file.length() >> 8);
int l8 = (int) file.length();
out.write(l1);
out.write(l2);
out.write(l3);

View File

@ -13,6 +13,7 @@ import java.util.stream.Collectors;
public class XiShuiScale extends AbsScale {
private static Log log = Log.getLog(XiShuiScale.class);
public XiShuiScale(String id, String ip, int port) {
super(id, ip, port);
}

View File

@ -55,7 +55,7 @@ public class ExcelHelper {
// anchor.setAnchorType(ClientAnchor.AnchorType.byId(2));
// patriarch.createPicture(anchor, workbook.addPicture(QRcodeZxingUtil.generateQRcodeByte(val.toString(), 200, "png"), XSSFWorkbook.PICTURE_TYPE_PNG));
// } else {
getCell(getRow(sheet, addr.getRow()), addr.getColumn()).setCellValue(val.toString());
getCell(getRow(sheet, addr.getRow()), addr.getColumn()).setCellValue(val.toString());
// }
}

View File

@ -49,7 +49,7 @@ public class CRC16 {
int ucCRCLo = preval & 0x00ff;
int iIndex;
for (int i = 0; i < len; ++i) {
iIndex = (ucCRCLo ^ data[offset + i]) & 0x00ff;
iIndex = (ucCRCLo ^ data[offset + i]) & 0x00ff;
ucCRCLo = ucCRCHi ^ crc16_tab_h[iIndex];
ucCRCHi = crc16_tab_l[iIndex];
}

View File

@ -8,6 +8,6 @@ public class LicenseJPGPair {
public LicenseJPGPair(String license, File file) {
this.license = license;
this.file = file;
this.file = file;
}
}

View File

@ -51,14 +51,14 @@ public class InvoiceLogController extends Controller {
@Before(StartAndEndIntervalValidator.class)
public void export() {
Integer supermarket_id = getInt("supermarket_id");
Integer state = getInt("state");
String invoice_number = get("invoice_number");
String order_sn = get("order_sn");
String stm = get("stm");
String etm = get("etm");
String code = get("code");
Integer invoice_type = getInt("invoice_type");
Integer supermarket_id = getInt("supermarket_id");
Integer state = getInt("state");
String invoice_number = get("invoice_number");
String order_sn = get("order_sn");
String stm = get("stm");
String etm = get("etm");
String code = get("code");
Integer invoice_type = getInt("invoice_type");
Workbook wb = InvoiceLogService.me.export(invoice_number, supermarket_id, state, order_sn, stm, etm, code, invoice_type);

View File

@ -8,17 +8,18 @@ import org.quartz.JobExecutionContext;
public class SyncJob implements Job {
private static Log log = Log.getLog(SyncJob.class);
@Override
public void execute(JobExecutionContext jobExecutionContext){
public void execute(JobExecutionContext jobExecutionContext) {
try {
SyncTaskService.me.task();
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
}
try {
OssfileLogService.me.checkUploadStatus();
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}

View File

@ -50,7 +50,7 @@ public class AuthInterceptor implements Interceptor {
}
} catch (Exception e) {
log.error(e.getMessage(), e);
inv.getController().renderJson(Result.failedstr("服务端异常: %s", e.getMessage() ));
inv.getController().renderJson(Result.failedstr("服务端异常: %s", e.getMessage()));
}
}
}

View File

@ -9,11 +9,11 @@ import java.util.List;
import java.util.Map;
public class CliCacheData {
public static Supermarket SUP = null; // 当前砂站对象
public static Map<String, List<String>> licenseInQueue = new HashMap<>(); //车辆入场识别队列,兼容多个出入口
public static Supermarket SUP = null; // 当前砂站对象
public static Map<String, List<String>> licenseInQueue = new HashMap<>(); //车辆入场识别队列,兼容多个出入口
public static Map<String, List<String>> licenseOutQueue = new HashMap<>(); //车辆出场识别队列,兼容多个出入口
public static Map<String, List<String>> licenseSameQueue = new HashMap<>(); //车辆出场识别队列,同进同出
public static Map<String, List<Record>> licenseInHis = new HashMap<>(); //车辆入场识别历史,兼容多个出入口
public static Map<String, List<Record>> licenseInHis = new HashMap<>(); //车辆入场识别历史,兼容多个出入口
public static Map<String, String> nowLicenseMap = new HashMap<>(); // 车牌
public static Map<String, Double> nowWeightMap = new HashMap<>(); // 重量

View File

@ -11,7 +11,7 @@ public class Main {
public static void main(String[] args) {
String name = ManagementFactory.getRuntimeMXBean().getName();
String pid = name.split("@")[0];
String pid = name.split("@")[0];
/**
*

View File

@ -37,17 +37,33 @@ public class ModifyLogSyncService {
modify.setCreateUserId(sysuser.getId());
modify.setCreateUserName(sysuser.getName());
return Db.tx(new IAtom() {
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return modify.save() && SyncTaskService.me.save(new SyncTask().addSaveData(modify));
boolean ret = modify.save();
if (!ret) {
return false;
}
synctask.addSaveData(modify);
return SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
}
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret;
}
/**
@ -73,16 +89,32 @@ public class ModifyLogSyncService {
modify.setCreateUserId(sysuser.getId());
modify.setCreateUserName(sysuser.getName());
return Db.tx(new IAtom() {
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return modify.save() && SyncTaskService.me.save(new SyncTask().addSaveData(modify));
boolean ret = modify.save();
if (!ret) {
return false;
}
synctask.addSaveData(modify);
return SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
}
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret;
}
}

View File

@ -13,10 +13,10 @@ import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
public abstract class AbstractClient implements EndPoint {
private static Log log = Log.getLog(AbstractClient.class);
private String hostName;
private int port;
private int connectionTimeout;
private static Log log = Log.getLog(AbstractClient.class);
private String hostName;
private int port;
private int connectionTimeout;
protected final CountDownLatch countDownLatch = new CountDownLatch(1);
protected String respMsg;

View File

@ -5,12 +5,14 @@ import java.net.InetSocketAddress;
public interface EndPoint {
/**
*
*
* @return
*/
InetSocketAddress getLocalAddress() throws Exception;
/**
*
*
* @return
*/
InetSocketAddress getRemoteAddress();

View File

@ -29,32 +29,37 @@ public class SocketIOService {
/**
*
*
* @param record
*/
public void pubRefreshReal(Record record){
public void pubRefreshReal(Record record) {
pub("refresh_real", record);
}
/**
*
*
* @param record
*/
public void pubRefreshInSup(Record record){
public void pubRefreshInSup(Record record) {
pub("refresh_in_sup", record);
}
/**
*
*
* @param record
*/
public void pubMessage(Record record){
public void pubMessage(Record record) {
pub("message", record);
}
/**
*
*
* @param record
*/
public void pubBankPayComplete(Record record){
public void pubBankPayComplete(Record record) {
pub("bank_pay_complete", record);
}
@ -82,7 +87,7 @@ public class SocketIOService {
}
});
server.addDisconnectListener(new DisconnectListener(){
server.addDisconnectListener(new DisconnectListener() {
@Override
public void onDisconnect(SocketIOClient client) {
log.debug("客户端断开连接:%s", client.getRemoteAddress());
@ -122,7 +127,7 @@ public class SocketIOService {
Iterator<SocketIOClient> iterator = server.getAllClients().iterator();
log.debug("开始销毁 socket.io client" + server.getAllClients().size());
while (iterator.hasNext()){
while (iterator.hasNext()) {
SocketIOClient client = iterator.next();
client.disconnect();
log.debug("销毁 socket.io client" + client);

View File

@ -24,7 +24,7 @@ public class OrderclusterTruckController extends Controller {
* data = false
*/
@Before(OrderclusterTruckPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
OrderclusterTruck model = getModel(OrderclusterTruck.class, "", true); // 忽略不在model中的字段
renderJson(OrderclusterTruckService.me.checkExistsByPk(model));
}
@ -32,7 +32,7 @@ public class OrderclusterTruckController extends Controller {
/**
* ordercluster_truck -
*/
public void find(){
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
renderJson(Result.object(OrderclusterTruckService.me.find(pp)));
}
@ -41,7 +41,7 @@ public class OrderclusterTruckController extends Controller {
* ordercluster_truck -
*/
@Before(OrderclusterTruckPKValidator.class)
public void findByPk(){
public void findByPk() {
OrderclusterTruck model = getModel(OrderclusterTruck.class, "", true); // 忽略不在model中的字段
renderJson(OrderclusterTruckService.me.findByPk(model));
}
@ -50,7 +50,7 @@ public class OrderclusterTruckController extends Controller {
* ordercluster_truck -
*/
@Before(OrderclusterTruckPKValidator.class)
public void get(){
public void get() {
OrderclusterTruck model = getModel(OrderclusterTruck.class, "", true); // 忽略不在model中的字段
renderJson(OrderclusterTruckService.me.findByPk(model));
}
@ -58,7 +58,7 @@ public class OrderclusterTruckController extends Controller {
/**
* ordercluster_truck -
*/
public void list(){
public void list() {
renderJson(Result.object(OrderclusterTruckService.me.list()));
}
}

View File

@ -49,12 +49,12 @@ public class OrderPurchaseController extends BaseController {
return;
}
String uuid = get("uuid");
String transport_id = get("transport_id");
Integer purchase_id = getInt("purchase_id");
Integer product_id = getInt("product_id");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
Double source_weight = getParaToDouble("source_weight");
String uuid = get("uuid");
String transport_id = get("transport_id");
Integer purchase_id = getInt("purchase_id");
Integer product_id = getInt("product_id");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
Double source_weight = getParaToDouble("source_weight");
renderJson(OrderPurchaseSyncService.me.pay(uuid, transport_id, purchase_id, product_id, printer, source_weight, tokenuser));
}
@ -91,7 +91,7 @@ public class OrderPurchaseController extends BaseController {
if (Integer.parseInt(sn.substring(10, 12)) != OrderTypeEnum.PURCHASE.getTypeid()) {
renderJson(Result.failed("sn 不能为 null"));
}else{
} else {
renderJson(LocalOrderService.me.print(sn, printer, tokenuser));
}
}

View File

@ -14,7 +14,7 @@ public class OrderPurchasePayValidator extends CrudParamValidator {
validateInteger("purchase_id", 1, 2147483647, "purchase_id", "purchase_id 范围 1~2147483647");
validateInteger("product_id", 1, 2147483647, "product_id", "product_id 范围 1~2147483647");
if(StrKit.notBlank(c.get("source_weight"))){
if (StrKit.notBlank(c.get("source_weight"))) {
validateDouble("source_weight", 1, 9999, "source_weight", "source_weight 范围 1~999");
}
}

View File

@ -175,6 +175,10 @@ public class OrderPurchaseSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return LocalOrderService.me.orderPayComplete(ret, order.toRecord(), transport, printerId);
}
@ -210,6 +214,8 @@ public class OrderPurchaseSyncService {
logrecord.set("sn", sn);
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
@ -222,7 +228,6 @@ public class OrderPurchaseSyncService {
stock.setStockWeight(stock.getStockWeight().subtract(order.getWeight())); // 取消转运减库存
SyncTask synctask = new SyncTask();
synctask.addUpdateData(order);
synctask.addUpdateData(stock);
@ -236,6 +241,10 @@ public class OrderPurchaseSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(order) : Result.failed("取消失败");
}
}

View File

@ -17,7 +17,7 @@ import com.jfinal.aop.Before;
public class OrderSaleController extends BaseController {
@Before(OrderSalePKValidator.class)
public void get(){
public void get() {
renderJson(Result.object(OrderSaleService.me.get(get("sn"))));
}
@ -58,10 +58,11 @@ public class OrderSaleController extends BaseController {
String driver_name = get("driver_name");
String driver_phone = get("driver_phone");
String memo = get("memo");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
renderJson(OrderSaleSyncService.me.pay(uuid, transport_id, ordercluster_id, driver_name, driver_phone, memo, printer, tokenuser));
}
/**
*
*/
@ -80,7 +81,7 @@ public class OrderSaleController extends BaseController {
String driver_name = get("driver_name");
String driver_phone = get("driver_phone");
String memo = get("memo");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
renderJson(OrderSaleSyncService.me.prepay(uuid, transport_id, ordercluster_id, driver_name, driver_phone, memo, printer, tokenuser));
}
@ -117,7 +118,7 @@ public class OrderSaleController extends BaseController {
if (Integer.parseInt(sn.substring(10, 12)) != OrderTypeEnum.SALE.getTypeid()) {
renderJson(Result.failed("sn 不能为 null"));
}else{
} else {
renderJson(LocalOrderService.me.print(sn, printer, tokenuser));
}
}

View File

@ -218,6 +218,10 @@ public class OrderSaleSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return LocalOrderService.me.orderPayComplete(ret, order.toRecord(), transport, printerId);
}
@ -518,6 +522,10 @@ public class OrderSaleSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return LocalOrderService.me.orderPayComplete(ret, order.toRecord(), transport, printerId);
}
@ -549,7 +557,8 @@ public class OrderSaleSyncService {
order.setState(OrderStateEnum.INVALID.getStateid()); // 将订单状态置为 9
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("sn", sn);
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
@ -557,7 +566,6 @@ public class OrderSaleSyncService {
@Override
public boolean run() {
try {
SyncTask synctask = new SyncTask();
synctask.addUpdateData(order);
boolean ret = order.update()
@ -624,6 +632,10 @@ public class OrderSaleSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(order) : Result.failed("取消失败");
}
}

View File

@ -8,8 +8,8 @@ import java.text.SimpleDateFormat;
import java.util.Date;
public class OrderSeqService {
public static OrderSeqService me = new OrderSeqService();
private static Log log = Log.getLog(OrderSeqService.class);
public static OrderSeqService me = new OrderSeqService();
private static Log log = Log.getLog(OrderSeqService.class);
private static final ThreadLocal<SimpleDateFormat> orderday = new ThreadLocal<SimpleDateFormat>() {
protected SimpleDateFormat initialValue() {
return new SimpleDateFormat("yyyyMMdd");
@ -19,6 +19,7 @@ public class OrderSeqService {
/**
*
* 使
*
* @param supermarket_id
* @param type
* @return
@ -27,7 +28,7 @@ public class OrderSeqService {
public String getNextSn(int supermarket_id, int type) throws Exception {
java.sql.Date now = new java.sql.Date(System.currentTimeMillis()); // 使用 java.sql.Date 只保留日期
// 复合主键,这里的顺序和数据库中的一致
OrderSeq seq = OrderSeq.dao.findByIds(now, supermarket_id, type); // 这里直接使用 Date 作为查询条件,需要注意 mysql 连接字符串上加上 &serverTimezone=GMT+8
OrderSeq seq = OrderSeq.dao.findByIds(now, supermarket_id, type); // 这里直接使用 Date 作为查询条件,需要注意 mysql 连接字符串上加上 &serverTimezone=GMT+8
if (seq == null) {
seq = new OrderSeq();

View File

@ -48,19 +48,19 @@ public class OrderTempController extends BaseController {
@Before(StartAndEndIntervalValidator.class)
public void export() {
String stm = get("stm");
String etm = get("etm");
String truck_license = getUpperCaseVal("truck_license");
String customer_name = get("customer_name");
String sn = get("sn");
Integer state = getInt("state");
Integer product_id = getInt("product_id");
Integer supermarket_id = getInt("supermarket_id");
Integer isprepaid = getInt("isprepaid");
String invoice_code = get("invoice_code");
Integer invoice_type = getInt("invoice_type");
Integer customer_id = getInt("customer_id");
Boolean invoice_code_is_null = getBoolean("invoice_code_is_null");
String stm = get("stm");
String etm = get("etm");
String truck_license = getUpperCaseVal("truck_license");
String customer_name = get("customer_name");
String sn = get("sn");
Integer state = getInt("state");
Integer product_id = getInt("product_id");
Integer supermarket_id = getInt("supermarket_id");
Integer isprepaid = getInt("isprepaid");
String invoice_code = get("invoice_code");
Integer invoice_type = getInt("invoice_type");
Integer customer_id = getInt("customer_id");
Boolean invoice_code_is_null = getBoolean("invoice_code_is_null");
Workbook wb = OrderTempService.me.export(sn, truck_license, supermarket_id, customer_id, customer_name, stm, etm, isprepaid, state, invoice_code, invoice_type, product_id, invoice_code_is_null);

View File

@ -894,7 +894,8 @@ public class OrderTempSyncService {
order.setState(OrderStateEnum.INVALID.getStateid()); // 将订单状态置为 9
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("sn", sn);
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
@ -902,7 +903,6 @@ public class OrderTempSyncService {
@Override
public boolean run() {
try {
SyncTask synctask = new SyncTask();
synctask.addUpdateData(order);
boolean ret = order.update();
@ -1019,6 +1019,10 @@ public class OrderTempSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(order) : Result.failed("取消失败");
}

View File

@ -19,7 +19,7 @@ public class OrderTransferController extends BaseController {
private static Log log = Log.getLog(OrderTransferController.class);
@Before(OrderTransferPKValidator.class)
public void get(){
public void get() {
renderJson(Result.object(OrderTransferService.me.get(get("sn"))));
}
@ -49,12 +49,12 @@ public class OrderTransferController extends BaseController {
return;
}
String uuid = get("uuid");
String transport_id = get("transport_id");
Integer sandfarm_id = getInt("sandfarm_id");
Integer product_id = getInt("product_id");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
Double source_weight = getParaToDouble("source_weight");
String uuid = get("uuid");
String transport_id = get("transport_id");
Integer sandfarm_id = getInt("sandfarm_id");
Integer product_id = getInt("product_id");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
Double source_weight = getParaToDouble("source_weight");
renderJson(OrderTransferSyncService.me.pay(uuid, transport_id, sandfarm_id, product_id, printer, source_weight, tokenuser));
}
@ -91,7 +91,7 @@ public class OrderTransferController extends BaseController {
if (Integer.parseInt(sn.substring(10, 12)) != OrderTypeEnum.TRANSFER.getTypeid()) {
renderJson(Result.failed("sn 不能为 null"));
}else{
} else {
renderJson(LocalOrderService.me.print(sn, printer, tokenuser));
}
}

View File

@ -14,7 +14,7 @@ public class OrderTransferPayValidator extends CrudParamValidator {
validateInteger("sandfarm_id", 1, 2147483647, "sandfarm_id", "sandfarm_id 范围 1~2147483647");
validateInteger("product_id", 1, 2147483647, "product_id", "product_id 范围 1~2147483647");
if(StrKit.notBlank(c.get("source_weight"))){
if (StrKit.notBlank(c.get("source_weight"))) {
validateDouble("source_weight", 1, 9999, "source_weight", "source_weight 范围 1~999");
}
}

View File

@ -25,7 +25,6 @@ public class OrderTransferSyncService {
private static Log log = Log.getLog(OrderTransferSyncService.class);
/**
*
* @param uuid
* @param transport_id id
* @param sandfarm_id id
@ -95,7 +94,7 @@ public class OrderTransferSyncService {
BigDecimal net_weight = transport.getFirstWeight().subtract(transport.getSecondWeight()); // 转运的用第一次减第二次
if(source_weight != null){
if (source_weight != null) {
order.setSourceWeight(new BigDecimal(source_weight));
}
@ -188,6 +187,10 @@ public class OrderTransferSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return LocalOrderService.me.orderPayComplete(ret, order.toRecord(), transport, printerId);
}
@ -219,7 +222,8 @@ public class OrderTransferSyncService {
order.setState(OrderStateEnum.INVALID.getStateid()); // 将订单状态置为 9
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("sn", sn);
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
@ -235,7 +239,6 @@ public class OrderTransferSyncService {
stock.setStockWeight(stock.getStockWeight().subtract(order.getWeight())); // 取消转运减库存
SyncTask synctask = new SyncTask();
synctask.addUpdateData(order);
synctask.addUpdateData(stock);
@ -249,6 +252,10 @@ public class OrderTransferSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(order) : Result.failed("取消失败");
}
}

View File

@ -19,7 +19,7 @@ public class OrderTrashController extends BaseController {
private static Log log = Log.getLog(OrderTrashController.class);
@Before(OrderTrashPKValidator.class)
public void get(){
public void get() {
renderJson(Result.object(OrderTrashService.me.get(get("sn"))));
}
@ -52,7 +52,7 @@ public class OrderTrashController extends BaseController {
String transport_id = get("transport_id");
Double trans_distance = getParaToDouble("trans_distance");
Integer product_id = getInt("product_id");
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
renderJson(OrderTrashSyncService.me.pay(uuid, transport_id, trans_distance, product_id, printer, tokenuser));
}
@ -89,7 +89,7 @@ public class OrderTrashController extends BaseController {
if (Integer.parseInt(sn.substring(10, 12)) != OrderTypeEnum.TRASH.getTypeid()) {
renderJson(Result.failed("sn 不能为 null"));
}else{
} else {
renderJson(LocalOrderService.me.print(sn, printer, tokenuser));
}
}

View File

@ -164,6 +164,10 @@ public class OrderTrashSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return LocalOrderService.me.orderPayComplete(ret, order.toRecord(), transport, printerId);
}
@ -195,7 +199,8 @@ public class OrderTrashSyncService {
order.setState(OrderStateEnum.INVALID.getStateid()); // 将订单状态置为 9
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("sn", sn);
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
@ -211,7 +216,6 @@ public class OrderTrashSyncService {
stock.setStockWeight(stock.getStockWeight().add(order.getWeight())); // 废料运出取消,加库存
SyncTask synctask = new SyncTask();
synctask.addUpdateData(order);
synctask.addUpdateData(stock);
@ -227,6 +231,10 @@ public class OrderTrashSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(order) : Result.failed("取消失败");
}
}

View File

@ -16,10 +16,10 @@ import java.util.List;
* https://cthb.static.cloudowr.cn/imgfile/68d6adcfb60549b0ba9d6d24178903a8.jpg?x-oss-process=style/128
*/
public class OssfileLogService {
private static Log log = Log.getLog(OssfileLogService.class);
public static OssfileLogService me = new OssfileLogService();
private static Log log = Log.getLog(OssfileLogService.class);
public static OssfileLogService me = new OssfileLogService();
public void save(String transport_id, String osskey, String absolutepath){
public void save(String transport_id, String osskey, String absolutepath) {
OssfileLog ossfile = new OssfileLog();
ossfile.setId(StrKit.getRandomUUID());
ossfile.setTransportId(transport_id);
@ -38,8 +38,8 @@ public class OssfileLogService {
try {
String oldpath = imageFile.getAbsolutePath();
String suffix = oldpath.substring(oldpath.lastIndexOf("."), oldpath.length());
String outfmt = oldpath.substring(oldpath.lastIndexOf(".") + 1, oldpath.length()).toLowerCase();
String suffix = oldpath.substring(oldpath.lastIndexOf("."), oldpath.length());
String outfmt = oldpath.substring(oldpath.lastIndexOf(".") + 1, oldpath.length()).toLowerCase();
String newpath = oldpath.substring(0, oldpath.lastIndexOf(".")) + "_thum_" + suffix;
Thumbnails.of(oldpath).scale(0.7f).outputFormat(outfmt).toFile(newpath);
@ -56,9 +56,9 @@ public class OssfileLogService {
return null;
}
public void checkUploadStatus(){
public void checkUploadStatus() {
List<OssfileLog> logs = OssfileLog.dao.find("select * from ossfile_log t where t.state = 0 limit 10");
if(logs.isEmpty()){
if (logs.isEmpty()) {
return;
}
@ -66,32 +66,32 @@ public class OssfileLogService {
log.debug("有 %s 张图片需要传到 oss", logs.size());
for(OssfileLog ossfile : logs){
for (OssfileLog ossfile : logs) {
File thumfile = null;
try {
File imgFile = new File(ossfile.getAbsolutepath());
if(!imgFile.exists()){
if (!imgFile.exists()) {
log.error("文件[%s]已不存在", ossfile.getAbsolutepath());
}
thumfile = createThumbnail(imgFile); // 先压缩,再上传
if(OSSKit.putObject(ossfile.getOsskey(), thumfile)){
if (OSSKit.putObject(ossfile.getOsskey(), thumfile)) {
ossfile.setState(1);
ups.add(ossfile);
}
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
}finally {
if(thumfile != null){
} finally {
if (thumfile != null) {
thumfile.delete(); // 删除压缩文件
}
}
}
if(!ups.isEmpty()){
if (!ups.isEmpty()) {
Db.batchUpdate(ups, ups.size());
}
}

View File

@ -27,7 +27,7 @@ public class PrepayDetailController extends Controller {
* data = false
*/
@Before(PrepayDetailPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
PrepayDetail model = getModel(PrepayDetail.class, "", true); // 忽略不在model中的字段
renderJson(PrepayDetailService.me.checkExistsByPk(model));
}
@ -35,13 +35,13 @@ public class PrepayDetailController extends Controller {
/**
* prepay_detail -
*/
public void find(){
Integer customer_id = getInt("customer_id");
String name = get("name");
String stm = get("stm");
String etm = get("etm");
Integer state = getInt("state");
PageParam pp = getBean(PageParam.class, "", true);
public void find() {
Integer customer_id = getInt("customer_id");
String name = get("name");
String stm = get("stm");
String etm = get("etm");
Integer state = getInt("state");
PageParam pp = getBean(PageParam.class, "", true);
renderJson(Result.object(PrepayDetailService.me.find(pp, customer_id, name, stm, etm, state)));
}
@ -49,7 +49,7 @@ public class PrepayDetailController extends Controller {
* prepay_detail -
*/
@Before(PrepayDetailPKValidator.class)
public void findByPk(){
public void findByPk() {
PrepayDetail model = getModel(PrepayDetail.class, "", true); // 忽略不在model中的字段
renderJson(PrepayDetailService.me.findByPk(model));
}
@ -58,7 +58,7 @@ public class PrepayDetailController extends Controller {
* prepay_detail -
*/
@Before(PrepayDetailPKValidator.class)
public void get(){
public void get() {
renderJson(PrepayDetailService.me.get(get("id")));
}
@ -66,7 +66,7 @@ public class PrepayDetailController extends Controller {
* prepay_detail
*/
@Before({StartAndEndTimeValidator.class, CustomerIdValidator.class})
public void list(){
public void list() {
int export = getInt("export", 0); // 是否导出为exce 0 不导出1 导出
int customer_id = getInt("customer_id", 0);
String stm = get("stm");

View File

@ -11,8 +11,8 @@ import com.jfinal.kit.StrKit;
public class DayValidator extends CrudParamValidator {
@Override
protected void validate(Controller c) {
if(StrKit.notBlank(c.get("valid_date"))){
validateDate("valid_date", "yyyy-MM-dd","valid_date","valid_date 格式必须为 yyyy-MM-dd");
if (StrKit.notBlank(c.get("valid_date"))) {
validateDate("valid_date", "yyyy-MM-dd", "valid_date", "valid_date 格式必须为 yyyy-MM-dd");
}
}

View File

@ -22,31 +22,29 @@ public class PrepayTruckSyncService extends BaseSyncService {
private static Log log = Log.getLog(PrepayTruckSyncService.class);
/**
*
* @param truckarr
* [
* {
* customer_id
* truck_license
* supermarket_id
* valid_date
* type
* }
* ]
* @param truckarr [
* {
* customer_id
* truck_license
* supermarket_id
* valid_date
* type
* }
* ]
* @param sysuser
* @return
*/
public Result save(JSONArray truckarr, Sysuser sysuser) {
try {
if(truckarr == null){
if (truckarr == null) {
return Result.failed("无效的参数");
}
List<String> ts = new ArrayList<>();
List<String> tsql = new ArrayList<>();
Map<String,Boolean> co_trucks = new HashMap<>(); // 物流公司车辆
List<String> co_tsql = new ArrayList<>();
Map<String, Boolean> co_trucks = new HashMap<>(); // 物流公司车辆
List<String> co_tsql = new ArrayList<>();
List<Record> pts = new ArrayList<>();
@ -56,7 +54,7 @@ public class PrepayTruckSyncService extends BaseSyncService {
ts.add(obj.getString("truck_license"));
tsql.add("?");
if(obj.getIntValue("type") == 1){
if (obj.getIntValue("type") == 1) {
co_trucks.put(obj.getString("truck_license"), true);
co_tsql.add("?");
}
@ -77,7 +75,7 @@ public class PrepayTruckSyncService extends BaseSyncService {
return Result.failed(StrKit.join(ts, ",") + " 车牌号在黑名单中");
}
if(!co_trucks.isEmpty()){
if (!co_trucks.isEmpty()) {
List<Truck> trucks = Truck.dao.find(
"select * from truck where license in ("
+ StrKit.join(co_tsql, ",") + ")", co_trucks.keySet().toArray());
@ -94,7 +92,7 @@ public class PrepayTruckSyncService extends BaseSyncService {
}
}
if(!co_trucks.isEmpty()){
if (!co_trucks.isEmpty()) {
return Result.failed(StrKit.join(ts, ",") + " 车牌不是物流公司车辆");
}
}

View File

@ -23,7 +23,7 @@ public class RefundDetailController extends BaseController {
* data = false
*/
@Before(RefundDetailPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
RefundDetail model = getModel(RefundDetail.class, "", true); // 忽略不在model中的字段
renderJson(RefundDetailService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class RefundDetailController extends BaseController {
/**
* refund_detail 退
*/
public void find(){
String name = get("name");
String stm = get("stm");
String etm = get("etm");
public void find() {
String name = get("name");
String stm = get("stm");
String etm = get("etm");
Integer state = getInt("state");
PageParam pp = getBean(PageParam.class, "", true);
renderJson(Result.object(RefundDetailService.me.find(pp, name, stm, etm, state)));
@ -44,7 +44,7 @@ public class RefundDetailController extends BaseController {
* refund_detail 退
*/
@Before(RefundDetailPKValidator.class)
public void findByPk(){
public void findByPk() {
RefundDetail model = getModel(RefundDetail.class, "", true); // 忽略不在model中的字段
renderJson(RefundDetailService.me.findByPk(model));
}
@ -53,14 +53,14 @@ public class RefundDetailController extends BaseController {
* refund_detail 退
*/
@Before(RefundDetailPKValidator.class)
public void get(){
public void get() {
renderJson(RefundDetailService.me.get(get("id")));
}
/**
* refund_detail 退
*/
public void list(){
public void list() {
renderJson(Result.object(RefundDetailService.me.list()));
}
}

View File

@ -23,7 +23,7 @@ public class ProductController extends Controller {
* data = false
*/
@Before(ProductPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Product model = getModel(Product.class, "", true); // 忽略不在model中的字段
renderJson(ProductService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class ProductController extends Controller {
/**
* product
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
renderJson(Result.object(ProductService.me.find(pp, name, del)));
}
@ -42,7 +42,7 @@ public class ProductController extends Controller {
* product
*/
@Before(ProductPKValidator.class)
public void findByPk(){
public void findByPk() {
Product model = getModel(Product.class, "", true); // 忽略不在model中的字段
renderJson(ProductService.me.findByPk(model));
}
@ -51,7 +51,7 @@ public class ProductController extends Controller {
* product
*/
@Before(ProductPKValidator.class)
public void get(){
public void get() {
Product model = getModel(Product.class, "", true); // 忽略不在model中的字段
renderJson(ProductService.me.findByPk(model));
}
@ -59,7 +59,7 @@ public class ProductController extends Controller {
/**
* product
*/
public void list(){
public void list() {
renderJson(Result.object(ProductService.me.list()));
}
}

View File

@ -23,7 +23,7 @@ public class PurchaseController extends Controller {
* data = false
*/
@Before(PurchasePKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Purchase model = getModel(Purchase.class, "", true); // 忽略不在model中的字段
renderJson(PurchaseService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class PurchaseController extends Controller {
/**
* purchase
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
renderJson(Result.object(PurchaseService.me.find(pp, name, del)));
}
@ -42,7 +42,7 @@ public class PurchaseController extends Controller {
* purchase
*/
@Before(PurchasePKValidator.class)
public void findByPk(){
public void findByPk() {
Purchase model = getModel(Purchase.class, "", true); // 忽略不在model中的字段
renderJson(PurchaseService.me.findByPk(model));
}
@ -51,7 +51,7 @@ public class PurchaseController extends Controller {
* purchase
*/
@Before(PurchasePKValidator.class)
public void get(){
public void get() {
Purchase model = getModel(Purchase.class, "", true); // 忽略不在model中的字段
renderJson(PurchaseService.me.findByPk(model));
}
@ -59,7 +59,7 @@ public class PurchaseController extends Controller {
/**
* purchase
*/
public void list(){
public void list() {
renderJson(Result.object(PurchaseService.me.list()));
}
}

View File

@ -23,7 +23,7 @@ public class SandfarmController extends Controller {
* data = false
*/
@Before(SandfarmPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Sandfarm model = getModel(Sandfarm.class, "", true); // 忽略不在model中的字段
renderJson(SandfarmService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class SandfarmController extends Controller {
/**
* sandfarm
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
renderJson(Result.object(SandfarmService.me.find(pp, name, del)));
}
@ -42,7 +42,7 @@ public class SandfarmController extends Controller {
* sandfarm
*/
@Before(SandfarmPKValidator.class)
public void findByPk(){
public void findByPk() {
Sandfarm model = getModel(Sandfarm.class, "", true); // 忽略不在model中的字段
renderJson(SandfarmService.me.findByPk(model));
}
@ -51,7 +51,7 @@ public class SandfarmController extends Controller {
* sandfarm
*/
@Before(SandfarmPKValidator.class)
public void get(){
public void get() {
Sandfarm model = getModel(Sandfarm.class, "", true); // 忽略不在model中的字段
renderJson(SandfarmService.me.findByPk(model));
}
@ -59,7 +59,7 @@ public class SandfarmController extends Controller {
/**
* sandfarm
*/
public void list(){
public void list() {
renderJson(Result.object(SandfarmService.me.list()));
}
}

View File

@ -23,7 +23,7 @@ public class SupermarketController extends Controller {
* data = false
*/
@Before(SupermarketPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Supermarket model = getModel(Supermarket.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class SupermarketController extends Controller {
/**
* supermarket
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
renderJson(Result.object(SupermarketService.me.find(pp, name, del)));
}
@ -42,7 +42,7 @@ public class SupermarketController extends Controller {
* supermarket
*/
@Before(SupermarketPKValidator.class)
public void findByPk(){
public void findByPk() {
Supermarket model = getModel(Supermarket.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketService.me.findByPk(model));
}
@ -51,14 +51,14 @@ public class SupermarketController extends Controller {
* supermarket
*/
@Before(SupermarketPKValidator.class)
public void get(){
public void get() {
renderJson(SupermarketService.me.get(getInt("id")));
}
/**
* supermarket
*/
public void list(){
public void list() {
renderJson(Result.object(SupermarketService.me.list()));
}
}

View File

@ -6,14 +6,14 @@ import com.cowr.ssjygl.supermarket.customerdistance.SupermarketCustomerDistanceS
import com.jfinal.core.Controller;
public class SupermarketCustomerDistanceController extends Controller {
public void get(){
Integer customer_id = getInt("customer_id");
Integer supermarket_id = getInt("supermarket_id");
public void get() {
Integer customer_id = getInt("customer_id");
Integer supermarket_id = getInt("supermarket_id");
renderJson(Result.success(SupermarketCustomerDistanceService.me.getDistance(supermarket_id, customer_id)));
}
public void customerDistance(){
Integer customer_id = getInt("customer_id");
public void customerDistance() {
Integer customer_id = getInt("customer_id");
renderJson(Result.success(SupermarketCustomerDistanceService.me.customerDistance(customer_id)));
}

View File

@ -26,7 +26,7 @@ public class SupermarketReceiverDistanceController extends Controller {
* data = false
*/
@Before(SupermarketReceiverDistancePKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
SupermarketReceiverDistance model = getModel(SupermarketReceiverDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketReceiverDistanceService.me.checkExistsByPk(model));
}
@ -34,11 +34,11 @@ public class SupermarketReceiverDistanceController extends Controller {
/**
* supermarket_receiver_distance
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer customer_receiver_id = getInt("customer_receiver_id");
Integer customer_id = getInt("customer_id");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer customer_receiver_id = getInt("customer_receiver_id");
Integer customer_id = getInt("customer_id");
renderJson(Result.object(SupermarketReceiverDistanceService.me.find(pp, supermarket_id, customer_receiver_id, customer_id)));
}
@ -46,7 +46,7 @@ public class SupermarketReceiverDistanceController extends Controller {
* supermarket_receiver_distance
*/
@Before(SupermarketReceiverDistancePKValidator.class)
public void findByPk(){
public void findByPk() {
SupermarketReceiverDistance model = getModel(SupermarketReceiverDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketReceiverDistanceService.me.findByPk(model));
}
@ -55,7 +55,7 @@ public class SupermarketReceiverDistanceController extends Controller {
* supermarket_receiver_distance
*/
@Before(SupermarketReceiverDistancePKValidator.class)
public void get(){
public void get() {
SupermarketReceiverDistance model = getModel(SupermarketReceiverDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketReceiverDistanceService.me.findByPk(model));
}
@ -63,18 +63,18 @@ public class SupermarketReceiverDistanceController extends Controller {
/**
* supermarket_receiver_distance
*/
public void list(){
Integer supermarket_id = getInt("supermarket_id");
public void list() {
Integer supermarket_id = getInt("supermarket_id");
Integer customer_receiver_id = getInt("customer_receiver_id");
Integer customer_id = getInt("customer_id");
Integer customer_id = getInt("customer_id");
renderJson(Result.object(SupermarketReceiverDistanceService.me.list(supermarket_id, customer_receiver_id, customer_id)));
}
public void findAllSupermarket(){
PageParam pp = getBean(PageParam.class, "", true);
Integer customer_receiver_id = getInt("customer_receiver_id");
Integer customer_id = getInt("customer_id");
String customer_name = get("customer_name");
public void findAllSupermarket() {
PageParam pp = getBean(PageParam.class, "", true);
Integer customer_receiver_id = getInt("customer_receiver_id");
Integer customer_id = getInt("customer_id");
String customer_name = get("customer_name");
renderJson(Result.object(SupermarketReceiverDistanceService.me.findAllSupermarket(pp, customer_receiver_id, customer_id, customer_name)));
}
}

View File

@ -12,7 +12,7 @@ import com.jfinal.core.Controller;
* Generated by COWR Mon Apr 06 09:50:28 CST 2020
* TableName: supermarket_sandfarm_distance
* Remarks:
* <p>
* PrimaryKey: supermarket_id,sandfarm_id
*/
public class SupermarketSandfarmDistanceController extends Controller {
@ -24,7 +24,7 @@ public class SupermarketSandfarmDistanceController extends Controller {
* data = false
*/
@Before(SupermarketSandfarmDistancePKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
SupermarketSandfarmDistance model = getModel(SupermarketSandfarmDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketSandfarmDistanceService.me.checkExistsByPk(model));
}
@ -32,10 +32,10 @@ public class SupermarketSandfarmDistanceController extends Controller {
/**
* supermarket_sandfarm_distance
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer sandfarm_id = getInt("sandfarm_id");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer sandfarm_id = getInt("sandfarm_id");
renderJson(Result.object(SupermarketSandfarmDistanceService.me.find(pp, supermarket_id, sandfarm_id)));
}
@ -43,7 +43,7 @@ public class SupermarketSandfarmDistanceController extends Controller {
* supermarket_sandfarm_distance
*/
@Before(SupermarketSandfarmDistancePKValidator.class)
public void findByPk(){
public void findByPk() {
SupermarketSandfarmDistance model = getModel(SupermarketSandfarmDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketSandfarmDistanceService.me.findByPk(model));
}
@ -52,7 +52,7 @@ public class SupermarketSandfarmDistanceController extends Controller {
* supermarket_sandfarm_distance
*/
@Before(SupermarketSandfarmDistancePKValidator.class)
public void get(){
public void get() {
SupermarketSandfarmDistance model = getModel(SupermarketSandfarmDistance.class, "", true); // 忽略不在model中的字段
renderJson(SupermarketSandfarmDistanceService.me.findByPk(model));
}
@ -60,7 +60,7 @@ public class SupermarketSandfarmDistanceController extends Controller {
/**
* supermarket_sandfarm_distance
*/
public void list(){
public void list() {
renderJson(Result.object(SupermarketSandfarmDistanceService.me.list()));
}
}

View File

@ -22,7 +22,7 @@ public class StockController extends Controller {
* stock -
*/
@Before(StockValidator.class)
public void edit(){
public void edit() {
Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token"));
if (tokenuser == null) {
@ -37,17 +37,17 @@ public class StockController extends Controller {
/**
* stock -
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer product_id = getInt("product_id");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
Integer supermarket_id = getInt("supermarket_id");
Integer product_id = getInt("product_id");
renderJson(Result.object(StockService.me.find(pp, supermarket_id, product_id)));
}
/**
* stock -
*/
public void list(){
public void list() {
renderJson(Result.object(StockService.me.list()));
}
}

View File

@ -34,11 +34,11 @@ public class StockSyncService {
return;
}
List<Stock> newlist = new ArrayList<>();
SyncTask synctask = new SyncTask();
List<Stock> newlist = new ArrayList<>();
SyncTask synctask = new SyncTask();
for (Record record : list) {
if(record.get("id") == CliCacheData.SUP.getId()){
if (record.get("id") == CliCacheData.SUP.getId()) {
Stock stock = new Stock();
stock.setProductId(record.get("product_id"));
stock.setSupermarketId(record.get("id"));
@ -51,7 +51,7 @@ public class StockSyncService {
}
if (!newlist.isEmpty()) {
Db.tx(new IAtom() {
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() throws SQLException {
int[] ret = Db.batchSave(newlist, newlist.size());
@ -60,6 +60,10 @@ public class StockSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
log.debug("初始化砂场库存信息 ");
}
}
@ -84,9 +88,10 @@ public class StockSyncService {
return Result.failed("商品信息获取失败");
}
Date now = new Date();
Date now = new Date();
SyncTask synctask = new SyncTask();
StockModifyLog modifyLog = new StockModifyLog();
modifyLog.setSupermarketId(model.getSupermarketId());
modifyLog.setProductId(model.getProductId());
modifyLog.setCreateUserId(sysuser.getId());
@ -98,8 +103,7 @@ public class StockSyncService {
@Override
public boolean run() {
try {
boolean ret = false;
SyncTask synctask = new SyncTask();
boolean ret = false;
if (model.checkExistsByPk()) { // update
Stock oldstock = Stock.dao.findByIds(model.getSupermarketId(), model.getProductId());
@ -111,7 +115,7 @@ public class StockSyncService {
ret = model.save() && modifyLog.save();
}
if(!ret){
if (!ret) {
return false;
}
@ -126,6 +130,10 @@ public class StockSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(model) : Result.failed("修改失败");
}
}

View File

@ -36,7 +36,7 @@ public class SyncTaskService {
* @return
*/
public boolean save(SyncTask synctask) {
if(!isEnable()){
if (!isEnable()) {
return true;
}
@ -62,15 +62,19 @@ public class SyncTaskService {
* @param model
*/
public void send(SyncTask model) {
if(!isEnable()){
return;
try {
if (!isEnable()) {
return;
}
JSONObject obj = new JSONObject()
.fluentPut("target", Enums.MsgTarget.SYNCTASK)
.fluentPut("data", model);
Config.nettyClient.sendMsg(obj.toJSONString());
} catch (Exception e) {
log.error(e.getMessage(), e);
}
JSONObject obj = new JSONObject()
.fluentPut("target", Enums.MsgTarget.SYNCTASK)
.fluentPut("data", model);
Config.nettyClient.sendMsg(obj.toJSONString());
}
public void syncComplete(String id) {
@ -87,7 +91,7 @@ public class SyncTaskService {
}
public void task() {
if(!isEnable()){
if (!isEnable()) {
return;
}
@ -116,16 +120,16 @@ public class SyncTaskService {
* @return
*/
public Result recv(JSONObject recvdata) {
if(!isEnable()){
if (!isEnable()) {
return Result.success();
}
long st = System.currentTimeMillis();
try {
JSONObject save_data = JSONObject.parseObject(recvdata.getString("save_data"));
JSONObject update_data = JSONObject.parseObject(recvdata.getString("update_data"));
JSONObject delete_data = JSONObject.parseObject(recvdata.getString("delete_data"));
JSONObject save_data = JSONObject.parseObject(recvdata.getString("save_data"));
JSONObject update_data = JSONObject.parseObject(recvdata.getString("update_data"));
JSONObject delete_data = JSONObject.parseObject(recvdata.getString("delete_data"));
JSONObject increment_data = JSONObject.parseObject(recvdata.getString("increment_data"));
if (
@ -197,9 +201,9 @@ public class SyncTaskService {
if (delete_data != null && !delete_data.isEmpty()) {
for (String tablename : delete_data.keySet()) {
JSONObject data = delete_data.getJSONObject(tablename);
String pks = data.getString("pks");
JSONArray arr = data.getJSONArray("data");
JSONObject data = delete_data.getJSONObject(tablename);
String pks = data.getString("pks");
JSONArray arr = data.getJSONArray("data");
if (AuthLicense.dao.getTablename().equals(tablename)) {
deleteauthlics.addAll(arr);
@ -301,7 +305,6 @@ public class SyncTaskService {
}
/**
* auth_license
*
@ -343,7 +346,7 @@ public class SyncTaskService {
return true;
}
});
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
}

View File

@ -14,7 +14,7 @@ import com.jfinal.core.Controller;
/**
* Generated by COWR Tue Jun 25 00:41:56 CST 2019
* TableName: sysuser
* Remarks:
* Remarks:
* PrimaryKey: id
*/
public class SysuserController extends Controller {
@ -26,17 +26,17 @@ public class SysuserController extends Controller {
* data = false
*/
@Before(SysuserPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
Sysuser model = getModel(Sysuser.class, "", true); // 忽略不在model中的字段
renderJson(SysuserSyncService.me.checkExistsByPk(model));
}
/**
* sysuser
* sysuser
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name", "");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name", "");
String phone = get("phone", "");
Integer del = getInt("del", Const.LOGIC_DEL_VALID); // 默认显示未删除的
Integer type = getInt("type");
@ -45,10 +45,10 @@ public class SysuserController extends Controller {
}
/**
* sysuser
* sysuser
*/
@Before(SysuserPKValidator.class)
public void findByPk(){
public void findByPk() {
Sysuser model = getModel(Sysuser.class, "", true); // 忽略不在model中的字段
renderJson(SysuserSyncService.me.findByPk(model));
}
@ -63,7 +63,7 @@ public class SysuserController extends Controller {
}
@Clear(AuthInterceptor.class)
public void login(){
public void login() {
String name = get("name", "").trim();
String phone = get("phone", "").trim();
String password = get("password", "");
@ -74,13 +74,13 @@ public class SysuserController extends Controller {
/**
*
*/
public void checkPhone(){
public void checkPhone() {
String phone = get("phone", "");
// 先判断手机号是否符合格式要求,然后再判断数据库是否已经存在
if(!StrUtil.isPhone(phone)){
if (!StrUtil.isPhone(phone)) {
renderJson(Result.success(false));
}else{
} else {
renderJson(Result.success(SysuserSyncService.me.checkPhone(phone)));
}
}
@ -88,7 +88,7 @@ public class SysuserController extends Controller {
/**
*
*/
public void modpwd(){
public void modpwd() {
String token = get("token", "");
String oldpwd = get("oldpwd", "");
String newpwd = get("newpwd", "");

View File

@ -363,7 +363,8 @@ public class SysuserSyncService extends BaseService {
return Result.failed(false, "修改失败");
}
String newmd5 = getPwdMD5(sysuser.getPhone(), newpwd);
SyncTask synctask = new SyncTask();
String newmd5 = getPwdMD5(sysuser.getPhone(), newpwd);
sysuser.setPassword(newmd5);
@ -375,12 +376,17 @@ public class SysuserSyncService extends BaseService {
if (!ret) {
return false;
}
synctask.addUpdateData(sysuser);
return SyncTaskService.me.save(new SyncTask().addUpdateData(sysuser))
return SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(sysuser, old, Enums.DataOpType.UPDATE.getId(), tokenuser);
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
sysuser.remove("password");
return ret ? Result.object(sysuser) : Result.failed(false, "修改失败");

View File

@ -8,7 +8,7 @@ import com.jfinal.core.Controller;
public class CmdLicenseValidator extends CrudParamValidator {
@Override
protected void validate(Controller c) {
validateRequired("which", "which" ,"which 必填");
validateRequired("which", "which", "which 必填");
validateString("truck_license", 1, 10, "truck_license", "truck_license 长度 1~10");
}

View File

@ -8,10 +8,10 @@ import com.jfinal.core.Controller;
public class ManualCreateValidator extends CrudParamValidator {
@Override
protected void validate(Controller c) {
validateRequired("truck_license", "truck_license" ,"truck_license 必填");
validateRequired("truck_license", "truck_license", "truck_license 必填");
validateBigDecimal("first_weight", new java.math.BigDecimal(0), new java.math.BigDecimal(9.999999999999E10), "first_weight", "first_weight 范围 0~9.999999999999E10");
validateBigDecimal("second_weight", new java.math.BigDecimal(0), new java.math.BigDecimal(9.999999999999E10), "second_weight", "second_weight 范围 0~9.999999999999E10");
validateRequired("password", "password" ,"password 必填");
validateRequired("password", "password", "password 必填");
}
protected void handleError(Controller c) {

View File

@ -9,9 +9,9 @@ public class ManualWeightValidator extends CrudParamValidator {
@Override
protected void validate(Controller c) {
validateString("transport_id", 32, 32, "transport_id", "transport_id 长度 32必填");
validateRequired("which", "which" ,"which 必填");
validateRequired("which", "which", "which 必填");
validateBigDecimal("weight", new java.math.BigDecimal(0), new java.math.BigDecimal(9.999999999999E10), "weight", "weight 范围 0~9.999999999999E10");
validateRequired("password", "password" ,"password 必填");
validateRequired("password", "password", "password 必填");
}
protected void handleError(Controller c) {

View File

@ -13,7 +13,7 @@ public class PaySginValidator extends CrudParamValidator {
String tran_scene = c.get("tran_scene");
if(!"B2C-JSAPI-ALIPAY".equals(tran_scene) && !"B2C-JSAPI-WECHAT".equals(tran_scene)){
if (!"B2C-JSAPI-ALIPAY".equals(tran_scene) && !"B2C-JSAPI-WECHAT".equals(tran_scene)) {
addError("tran_scene", "仅支持微信和支付宝付款");
}

View File

@ -19,9 +19,9 @@ import java.util.*;
* MySQL
*/
public class TransportDeviceService {
private static Log log = Log.getLog(TransportDeviceService.class);
public static TransportDeviceService me = new TransportDeviceService();
private static final int maxhislen = 3; // 保留的历史队列长度
private static Log log = Log.getLog(TransportDeviceService.class);
public static TransportDeviceService me = new TransportDeviceService();
private static final int maxhislen = 3; // 保留的历史队列长度
private static final ThreadLocal<SimpleDateFormat> sdf = new ThreadLocal<SimpleDateFormat>() {
protected SimpleDateFormat initialValue() {
@ -29,7 +29,7 @@ public class TransportDeviceService {
}
};
public Record real(){
public Record real() {
Record out = new Record();
out.set("inHis", CliCacheData.licenseInHis);
out.set("inQueue", CliCacheData.licenseInQueue);
@ -80,7 +80,7 @@ public class TransportDeviceService {
List<Record> his = CliCacheData.licenseInHis.get(which);
if(his == null){
if (his == null) {
his = new ArrayList<>();
his.add(truck);
@ -233,7 +233,7 @@ public class TransportDeviceService {
return Config.deviceThread.cmdResetFlow(which) && ActionCmdLogSyncService.me.save(cmdlog.toJson(), sysuser);
}
public boolean cmdRodUp(int num, String which, Sysuser sysuser){
public boolean cmdRodUp(int num, String which, Sysuser sysuser) {
Record cmdlog = new Record();
cmdlog.set("cmd", "rodUp");
cmdlog.set("which", which);
@ -241,12 +241,12 @@ public class TransportDeviceService {
boolean ret;
try{
try {
Config.deviceThread.cmdRodUp(num, which);
cmdlog.set("rod", true);
ret = true;
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
cmdlog.set("rod", false);
@ -258,16 +258,16 @@ public class TransportDeviceService {
return ret;
}
public double cmdScale(String which, Sysuser sysuser){
public double cmdScale(String which, Sysuser sysuser) {
Record cmdlog = new Record();
cmdlog.set("cmd", "scale");
cmdlog.set("which", which);
try{
try {
ActionCmdLogSyncService.me.save(cmdlog.toJson(), sysuser);
return Config.deviceThread.scale(which);
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
return 0.0;
}
@ -275,29 +275,30 @@ public class TransportDeviceService {
/**
*
*
* @param which
* @param sysuser
*/
public void manualTrigger(String which, Sysuser sysuser){
public void manualTrigger(String which, Sysuser sysuser) {
Record cmdlog = new Record();
cmdlog.set("cmd", "manualTrigger");
cmdlog.set("which", which);
Controller controller = Config.deviceThread.getController(which);
if(controller == null){
if (controller == null) {
log.debug("按 %s 未找到 Controller");
return;
}
if(controller.getCamera() == null || controller.getCamera().getIp() == null){
if (controller.getCamera() == null || controller.getCamera().getIp() == null) {
log.debug("Controller 为初始化");
return;
}
try{
try {
HttpKit.post("http://" + controller.getCamera().getIp() + "/cgi-bin/param.cgi?random=" + Math.random(), "key=manual_trigger_info");
ActionCmdLogSyncService.me.save(cmdlog.toJson(), sysuser);
}catch (Exception e){
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}

View File

@ -95,8 +95,8 @@ public class TransportQueryController extends BaseController {
// "http://192.168.1.16/apppay/waitPay.html?v=20200714&supermarket_id=" +
renderQrCode(
"http://qaky.cloudowr.cn/apppay/waitPay.html?v=20200714&supermarket_id=" +
supermarket_id
+ "&which=" + which, 512, 512);
supermarket_id
+ "&which=" + which, 512, 512);
}
@Before(CorsInterceptor.class)
@ -134,7 +134,7 @@ public class TransportQueryController extends BaseController {
@Before({OrderSnValidator.class, CorsInterceptor.class})
@Clear(AuthInterceptor.class)
public void completePay(){
public void completePay() {
String order_sn = get("order_sn"); // 业务系统订单号
renderJsonp(TransportQueryService.me.completePay(order_sn));
}

View File

@ -87,7 +87,7 @@ public class TransportQueryService {
}
// 正在等待支付的, 查询一次银行状态
if(snmodel.getInt("state") == OrderStateEnum.LEAVE.getStateid()){
if (snmodel.getInt("state") == OrderStateEnum.LEAVE.getStateid()) {
// Bocomm bocomm = Bocomm.dao.findFirst(
// "select * from bocomm t where t.order_sn = ? and t.state <= ? limit 0,1",
// transport.getOrderSn(),
@ -114,7 +114,7 @@ public class TransportQueryService {
transobj.set("supermarket_invoice_type", supermarket.getInvoiceType());
}
if(transport.getType() != null && transport.getType() == OrderTypeEnum.PURCHASE.getTypeid()){
if (transport.getType() != null && transport.getType() == OrderTypeEnum.PURCHASE.getTypeid()) {
Purchase purchase = Purchase.dao.findById(transobj.get("purchase_id"));
if (purchase != null) {
transobj.set("purchase_name", purchase.getName());
@ -122,9 +122,9 @@ public class TransportQueryService {
}
// transobj.set("next_invoice_code", InvoiceReceiveService.me.nextInvoiceCode(transport.getSupermarketId())); // 2020-09-21 加了发票代码
if(ordercluster.getReqReceipt() == 1){ // 需要打印发票的,才去插领票记录
if (ordercluster.getReqReceipt() == 1) { // 需要打印发票的,才去插领票记录
transobj.set("invoice_numbers", InvoiceReceiveService.me.nextInvoiceCodes(transport.getSupermarketId()));
}else{
} else {
transobj.set("invoice_numbers", new ArrayList<>());
}
transobj.set("req_receipt", ordercluster.getReqReceipt()); // TODO 2020-10-12 如果放开购买,连零散购砂都不做配额了,这里需要修改

View File

@ -34,7 +34,7 @@ import java.util.*;
/**
* MySQL
*
* <p>
*
* select * from modify_log t
* where t.`table` = 'transport'
@ -63,12 +63,21 @@ public class TransportSyncService {
return Result.success("车辆【" + truck_license + "】已经在系统内");
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
return authlic.save()
&& SyncTaskService.me.save(new SyncTask().addSaveData(authlic))
boolean ret = authlic.save();
if (!ret) {
return false;
}
synctask.addSaveData(authlic);
return SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(authlic, null, Enums.DataOpType.SAVE.getId(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
@ -79,6 +88,7 @@ public class TransportSyncService {
if (ret) {
TransportDeviceService.me.manualTrigger(which, sysuser);
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(authlic) : Result.failed("添加失败");
@ -358,12 +368,22 @@ public class TransportSyncService {
transport.setOutTime(new Date());
transport.setOutWhich(which);
File finalUploadfile = uploadfile;
File finalUploadfile = uploadfile;
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
boolean ret = transport.update() && SyncTaskService.me.save(new SyncTask().addUpdateData(transport));
boolean ret = transport.update();
if (!ret) {
return false;
}
synctask.addUpdateData(transport);
ret = SyncTaskService.me.save(synctask);
if (ret && finalUploadfile != null) {
OssfileLogService.me.save(transport.getId(), transport.getSecondPic(), finalUploadfile.getAbsolutePath());
@ -380,6 +400,8 @@ public class TransportSyncService {
if (ret) {
CliCacheData.nowLicenseMap.put(which, result.getLicense());
CliCacheData.nowWeightMap.put(which, null);
SyncTaskService.me.send(synctask);
}
result.setTransportId(transport.getId());
@ -502,6 +524,10 @@ public class TransportSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
result.setTransportId(transport.getId());
result.setAccess(ret);
result.setFlow(Enums.CtrlFlowEnum.C.name());
@ -549,13 +575,20 @@ public class TransportSyncService {
}
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
boolean ret = transport.update() && SyncTaskService.me.save(new SyncTask().addUpdateData(transport));
boolean ret = transport.update();
return ret;
if (!ret) {
return false;
}
synctask.addUpdateData(transport);
return SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
@ -576,6 +609,7 @@ public class TransportSyncService {
}
CliCacheData.nowWeightMap.put(which, weight);
SyncTaskService.me.send(synctask);
}
return ret;
@ -593,13 +627,21 @@ public class TransportSyncService {
transport.setSecondWeight(new BigDecimal(weight));
transport.setSecondWeightWhich(which);
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
boolean ret = transport.update() && SyncTaskService.me.save(new SyncTask().addUpdateData(transport));
boolean ret = transport.update();
return ret;
if (!ret) {
return false;
}
synctask.addUpdateData(transport);
return SyncTaskService.me.save(synctask);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
@ -609,6 +651,7 @@ public class TransportSyncService {
if (ret) {
CliCacheData.nowWeightMap.put(which, weight);
SyncTaskService.me.send(synctask);
}
return ret;
@ -705,8 +748,8 @@ public class TransportSyncService {
transport.setOutTime(now);
transport.setOutWhich(out_which);
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("id", transport.getId());
logrecord.set("modify_content", "manualWeight"); // 创建入场记录,用 Enums.DataOpType.UPDATE 记录
logrecord.set("modify_type", "manualCreate");
@ -862,17 +905,21 @@ public class TransportSyncService {
}
}
SyncTask synctask = new SyncTask();
boolean ret = Db.tx(new IAtom() {
@Override
public boolean run() {
try {
boolean ret = transport.update() && SyncTaskService.me.save(new SyncTask().addUpdateData(transport));
boolean ret = transport.update();
if (ret) {
ret = editLog(logrecord.toJson(), sysuser);
if (!ret) {
return false;
}
return ret;
synctask.addUpdateData(transport);
return SyncTaskService.me.save(synctask) && editLog(logrecord.toJson(), sysuser);
} catch (Exception e) {
log.error(e.getMessage(), e);
return false;
@ -880,6 +927,10 @@ public class TransportSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(transport) : Result.failed("修改失败");
}
@ -896,7 +947,8 @@ public class TransportSyncService {
transport.setState(OrderStateEnum.INVALID.getStateid()); // 作废
Record logrecord = new Record();
SyncTask synctask = new SyncTask();
Record logrecord = new Record();
logrecord.set("transport_id", transport.getId());
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
@ -904,8 +956,15 @@ public class TransportSyncService {
@Override
public boolean run() {
try {
boolean ret = transport.update()
&& SyncTaskService.me.save(new SyncTask().addUpdateData(transport))
boolean ret = transport.update();
if (!ret) {
return false;
}
synctask.addUpdateData(transport);
ret = SyncTaskService.me.save(synctask)
&& ModifyLogSyncService.me.save(transport.tablename, "transport_id", logrecord.toJson(), Enums.DataOpType.UPDATE.getId(), sysuser);
if (ret) {
if (StrKit.notBlank(transport.getOrderSn())) {
@ -937,6 +996,10 @@ public class TransportSyncService {
}
});
if (ret) {
SyncTaskService.me.send(synctask);
}
return ret ? Result.success(transport) : Result.failed("取消失败");
}

View File

@ -23,7 +23,7 @@ public class TransportCompanyController extends Controller {
* data = false
*/
@Before(TransportCompanyPKValidator.class)
public void checkExistsByPk(){
public void checkExistsByPk() {
TransportCompany model = getModel(TransportCompany.class, "", true); // 忽略不在model中的字段
renderJson(TransportCompanyService.me.checkExistsByPk(model));
}
@ -31,10 +31,10 @@ public class TransportCompanyController extends Controller {
/**
* transport_company
*/
public void find(){
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
public void find() {
PageParam pp = getBean(PageParam.class, "", true);
String name = get("name");
Integer del = getInt("del");
renderJson(Result.object(TransportCompanyService.me.find(pp, name, del)));
}
@ -42,7 +42,7 @@ public class TransportCompanyController extends Controller {
* transport_company
*/
@Before(TransportCompanyPKValidator.class)
public void findByPk(){
public void findByPk() {
TransportCompany model = getModel(TransportCompany.class, "", true); // 忽略不在model中的字段
renderJson(TransportCompanyService.me.findByPk(model));
}
@ -51,7 +51,7 @@ public class TransportCompanyController extends Controller {
* transport_company
*/
@Before(TransportCompanyPKValidator.class)
public void get(){
public void get() {
TransportCompany model = getModel(TransportCompany.class, "", true); // 忽略不在model中的字段
renderJson(TransportCompanyService.me.findByPk(model));
}
@ -59,7 +59,7 @@ public class TransportCompanyController extends Controller {
/**
* transport_company
*/
public void list(){
public void list() {
renderJson(Result.object(TransportCompanyService.me.list()));
}
}